计算使用AJAX生成的输入类型的总和

Calculating sum of input type generated using AJAX

本文关键字:类型 输入 计算使用 AJAX      更新时间:2023-09-26

我有这些具有相同id,名称的输入字段。这些输入是根据用户的选择使用ajax代码生成的。我想使用jquery在total_amount字段中对这些输入字段(p_amount)进行求和。

<input type="text" id="p_amount" name="p_amount[]" placeholder="Enter Amount ">
<input type="text" id="p_amount" name="p_amount[]" placeholder="Enter Amount ">
<input type="text" id="p_amount" name="p_amount[]" placeholder="Enter Amount ">
<input type="text" id="p_amount" name="p_amount[]" placeholder="Enter Amount ">
<input type="text" id="p_amount" name="p_amount[]" placeholder="Enter Amount ">
<input type="text" id="total_amount" name="total_amount"  value="" placeholder="Total Amount">

我使用以下js代码,但它只返回在第一个文本字段中输入的数字的总和。我想要所有带p_amount的id的和。请帮我一下。

<script type="text/javascript">
$('#total_amount').click(function() {
    var p_amount=$("#p_amount").val();
    var total = 0;
    for (var i = 0; i < p_amount.length; i++) {
        total += p_amount[i] << 0;
    }
</script>

试试这个,

var total=0;
$('#total_amount').click(function() {
    $("input[name='p_amount[]'").each(function(){
        total+=parseInt($(this).val());
    });
});
alert(total);

问题是您使用的字段的id s必须是不同的。您应该使用class属性来注释多个元素。

然后你可以用JQuery得到这些,然后用。each()遍历它们。

你可以在这里找到更多的信息和例子:JQuery . each ()