jQuery sum 复选框值

Kyu*_*uzo -1 checkbox jquery input

我需要计算所有复选框的总和并根据这里的选择更新总计是 html:

<input type="checkbox" id="basic_single" name="basic_single" value="400">
<input type="checkbox" id="basic_double" name="basic_double" value="680">
.
.
.
<input type="text" name="total" value="" size="30" id="total">
Run Code Online (Sandbox Code Playgroud)

这是脚本

   $('input:checkbox').change(function ()
     {
      var total = 0;
      var basic_single = parseInt($('#basic_single:checked').val());
      var basic_double = parseInt($('#basic_double:checked').val());

      var total = basic_single + basic_double;

      $("#total").val(total);

    });
Run Code Online (Sandbox Code Playgroud)

如果两者都被选中它工作正常,但只有一个被选中返回 NaN,会有比这两个更多的复选框

Din*_*yte 7

您只需要考虑检查的项目以计算总数。为此,您只能定位被检查的元素并遍历每个循环以添加它们的值以计算总和。以下示例不涉及单个元素的硬编码。

$('input:checkbox').change(function ()
{
      var total = 0;
      $('input:checkbox:checked').each(function(){ // iterate through each checked element.
        total += isNaN(parseInt($(this).val())) ? 0 : parseInt($(this).val());
      });     
      $("#total").val(total);

});
Run Code Online (Sandbox Code Playgroud)

示例:https : //jsfiddle.net/8p3ftmuh/2/