2014-09-11 51 views
1

我想做一个简单的计算器。我的问题是在添加函数中,当我输入值时,它不会添加两个值,而是将这两个值连接起来。有人可以帮我解决这个问题。这里是我的编码:简单的计算器敲除

var Calculator = function (number,addNum) { 
var self = this; 
self.number = ko.observable(number); 
self.addNum = ko.observable (addNum); 

self.sum = ko.computed(function(){ 
    return self.number() + self.addNum(); 
    }); 
} 
ko.applyBindings(new Calculator()); 

回答

2

因为他们必然要输入框,self.number()self.addNum()是字符串(即使它们是最初的数字)。使用parseFloat() ...

self.sum = ko.computed(function(){ 
    return parseFloat(self.number()) + parseFloat(self.addNum()); 
    }); 

Live Demo

+0

Thankss。有用! – user3815603 2014-09-11 07:24:36