0
我正在尝试使用数组做一个简单的计算onblur,但它不会触发。如果我将其更改为跨度或div,则可以正常工作。为什么它不与输入字段一起工作?使用输入字段而不是跨度或div计算数组
我需要它作为输入字段,因为它更容易将值存储在数据库中。
<input type="text" class="input-small" name="partnumber[]">
<input type="text" class="input-small" name="partdescription[]" >
<input type="text" class="input-small" name="partprice[]" onblur="doCalc(); calculate(); ">
<input type="text" class="input-small" name="partquantity[]" onblur="doCalc(); calculate(); ">
<input type="text" readonly class="input-small parttotal" name="parttotal[]" >
计算
function doCalc() {
var total = 0;
$('tr').each(function() {
$(this).find('.parttotal').html($('input:eq(2)', this).val() * $('input:eq(3)', this).val());
});
$('.parttotal').each(function() {
total += parseInt($(this).text(),10);
});
}
'$( 'TR')each' - 你没有任何'
回答
首先,我不会使用内联事件。这里我使用委托的事件,这一优势在这里,如果你动态地添加更多的线,它仍然会正常工作。
接下来确保每一行都有某种包装的每一行,在这里我使用了一个简单的DIV。 Yousr可能是您的TR ..
其余则变得容易,因为在这里可以看到,这个例子中,我只是价格,数量&总,并完成2线测试包括..
来源
2016-11-09 16:27:14 Keith
我为输入字段添加了更多按钮,名称变成了name =“partprice [2] name =”partprice [3] etc等 – JCD
不能使用
.html()
设置文本框的值。改变这一行:
到
注意的变化
('.parttotal').html
变得('.parttotal').val
来源
2016-11-09 16:38:11 ADyson
相关问题