简单的jquery总和

Dan*_*eel 4 math jquery sum

我有未知数量的输入字段,有类"添加"我只想用jquery来总结这些,不知道我错在哪里.

<input name="add" class="add" type="text">
<input name="add" class="add" type="text">
<input name="add" class="add" type="text">
<input name="add" class="add" type="text">

<input type="button" value="" onClick="add()" />
Run Code Online (Sandbox Code Playgroud)

`

function add(){
        val = 0;
        $(".add").each(function() {      
            str = (parseInt(this.value))
            sum=str+str
        });
        alert (sum)
    }
Run Code Online (Sandbox Code Playgroud)

`

Aln*_*tak 6

你永远不会真正添加东西sum:

function add() {
    var sum = 0;
    $(".add").each(function() {   
        sum += +this.value;
    });
    return sum; // an add function shouldn't really "alert"
}
Run Code Online (Sandbox Code Playgroud)

如果打算只支持整数,请使用parseInt(this.value, 10)[注意基数参数]而不是+this.value:

function add() {
    var sum = 0;
    $(".add").each(function() { 
        var str = this.value.trim();  // .trim() may need a shim
        if (str) {   // don't send blank values to `parseInt`
            sum += parseInt(str, 10);
        }
    });
    return sum;
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/alnitak/eHsJP/

  • @benqus它"转换"为一个(浮点)数字,并将空字符串转换为0(而'parseInt`将空格转换为'NaN`) (2认同)