迭代成一个元素数组

时间:2013-03-18 15:44:07

标签: jquery arrays loops

我发现了这个问题,它看起来很简单,但我找不到任何解决方案。我有一系列元素如下:

<input type="text" name="subTotal[]"/>
<input type="text" name="subTotal[]"/>
<input type="text" name="subTotal[]"/>
<input type="text" name="subTotal[]"/>

使用jquery,我想计算四个subTotal中的总数。当更改该subTotal的值时将触发计数。我尝试过如下,但它不起作用:

var totalPrice = 0;
$('input[name="subTotal"]').each( function( key, value ) {
    totalPrice += value;
    alert(totalPrice);
});

任何解决方案吗?

2 个答案:

答案 0 :(得分:3)

尝试使用值{/ p>上的name^=和parseInt

  var totalPrice = 0;
    $('input[name^="subTotal"]').each( function() {
        totalPrice += parseInt(this.value);
        alert(totalPrice);
    });

在这里演示http://jsfiddle.net/gBudm/

答案 1 :(得分:0)

试试这个:

$('input[name^="subTotal"]').change(function () {
    var totalPrice = 0;
    $('input[name^="subTotal"]').each(function () {
        totalPrice += parseInt(this.value);        
    })
    alert(totalPrice);
});

当更改该subTotal的值时将触发计数。 Demo here