我想知道是否有人可以帮助我。
我有一个网页,其中有一些文本框(动态金额,可能是3,可能是30),每个用户都可以输入一个数字,我的总数在底部。
目前我有这个:
$('input.qty').change(function() {
// Get the current total value
var total = $('#total');
// Update it with the changed input's value
total.val(parseInt(total.val()) + parseInt($(this).val()));
});
示例HTML:
<td><input type="text" class="qty" value="0" /></td>
<td><input type="text" class="qty" value="0" /></td>
<td><input type="text" class="qty" value="0" /></td>
<td><input type="text" id="total" value="0" /></td>
第一次添加正常,但是当你开始更改值时,它只是将新金额添加到总数而不是添加所有框。
我该如何排序?或许以某种方式使用每个attr?
答案 0 :(得分:2)
你可以使用.each()
循环遍历它们并总结它们,如下所示:
$('input.qty').change(function() {
var sum = 0;
$('input.qty').each(function() { sum += parseInt(this.value, 10); });
$('#total').val(sum);
});
You can give it a try here,如果您希望在每个按键上进行计算,请使用.keyup()
代替.change()
,like this。