附加值几个输入

时间:2011-12-29 10:16:24

标签: javascript jquery numbers

例如,我想要加法值两个输入20& 10并在警报中完成输出,但输入值2010如果我应该输出30,如何修复它?

演示: http://jsfiddle.net/SHjZM/

<input type"text" name="ok1" value="20">
<input type"text" name="ok2" value="10">



$('button').live('click', function(){
var val_1 = $('input[name="ok1"]').val();
var val_2 = $('input[name="ok2"]').val();
    var Sum = val_1 + val_2;
    alert(Sum) // in the here output is "2010" i want output "30" as: "20+10=30"
})

2 个答案:

答案 0 :(得分:1)

你需要在添加之前将变量转换为整数

var Sum = parseInt(val_1, 10) + parseInt(val_2, 10);

更新

如果未提供基数参数或者为其指定值0,则函数会尝试确定基数。如果字符串以1-9开头,则将其解析为基数10.如果字符串以0x或0X开头,则将其解析为十六进制数。如果字符串以0开头,则将其解析为八进制数。 (请注意,仅仅因为数字以零开头,并不意味着它实际上是八进制。)

http://devguru.com/Technologies/ecmascript/quickref/parseint.html

答案 1 :(得分:0)

您需要将字符串转换为(十进制)数字。

var Sum = parseFloat(val_1, 10) + parseFloat(10, val_2);