总计选中的复选框

时间:2015-11-18 11:25:25

标签: javascript php jquery mysql

现在要求是我在所有记录前都有一个复选框。当我检查它必须添加该特定行id总计的总计字段并在另一个名为Grand_total的字段中显示总计。例如,如果我检查第一个记录id1和第三个记录id3,它必须显示Grand_Total为3700.00(2500.00 + 1200.00)。实现这一目标的最佳方法是什么?是javascript还是php?请帮助我?

这是我尝试过的。                                   $('输入')。change(function(){         recalcTotal();        });

function recalcTotal() {
var total12 = 0;
$('input:checked').each(function() {
    total12 += $(this).data('tot'); 
});

$('#total12').html(total12);
}
</script>
<body>
 <input type='checkbox' data-tot='{$list5['margin_for']}' name='gt' id='gt'>   
 <input size='8' type='text' id='margin_for[]' name='margin_for[]' value='{$list5['margin_for']}' readonly>

<div id="total12"></div>
</body>

1 个答案:

答案 0 :(得分:0)

问题是你的函数没有在任何地方调用。在recalcTotal()上调用你的函数checkbox click。试试这个:

function recalcTotal() {
var total12 = 0;
$('input:checked').each(function() {
    total12 += $(this).data('tot'); 
});

$('#total12').val(total12);
}
$("input[type='checkbox']").on("click",function(){
  
  recalcTotal();
  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<body>
 <input type='checkbox' data-tot='100' name='gt1' id='gt1'>   
 <input size='8' type='text' id='margin_for[]' name='margin_for[]' value='100' readonly>
  
  <input type='checkbox' data-tot='50' name='gt' id='gt'>   
 <input size='8' type='text' id='margin_for[]' name='margin_for[]' value='50' readonly>
  <input name="grandTotal" id="total12" readonly/>
</body>