在jQuery中汇总文本框列表

maX*_*maX 3 javascript jquery

我有一个表单,其中有使用jquery动态添加的文本框.文本框ID形成一个数组,即Quantity [0],Quantity [1],Quantity [2] ......

我想在这些文本框中添加数字,并在另一个名为"total_quantity"的文本框中显示该值,最好是在焦点移出数组文本框时.

我该怎么做?我不介意使用jQuery或简单的javascript,这更容易.

Dan*_*llo 8

我建议为您的数量字段提供一个公共类,以便:

<input type="text" class="quantity" onblur="calculateTotal();" />
Run Code Online (Sandbox Code Playgroud)

然后你就可以用jQuery定义以下函数:

function calculateTotal() {
    var total = 0;

    $(".quantity").each(function() {
        if (!isNaN(this.value) && this.value.length != 0) {
            total += parseFloat(this.value);
        }
    });

    $("#total_quantity").val(total);
}
Run Code Online (Sandbox Code Playgroud)

onblur事件将每个重点从数量转向场火灾的时间.反过来,这将调用该calculateTotal()函数.


如果您不想添加公共类,可以使用$("input[id^='Quantity[']")选择器,如Felix在下面的注释中所建议的那样.这将匹配所有id为以下开头的文本框:Quantity[