Javascript 如何在jQuery中获取循环中选中复选框的值之和

Javascript 如何在jQuery中获取循环中选中复选框的值之和,javascript,jquery,html,checkbox,Javascript,Jquery,Html,Checkbox,我的HTML表单中有这段代码 <?php foreach ($charges as $c): ?> <br><input type="checkbox" class="charge" id="charge<?php echo $c->id; ?>" data-cash="<?php echo $c->amount; ?>"> <?php echo $c->description; ?> <?p

我的HTML表单中有这段代码

<?php foreach ($charges as $c): ?>
    <br><input type="checkbox" class="charge" id="charge<?php echo $c->id; ?>" data-cash="<?php echo $c->amount; ?>"> <?php echo $c->description; ?>
<?php } ?>

<div="total"></div>
但是,我应该得到所有复选框值的总和并显示它们。此外,将某些值与另一个数字相乘,然后再将其与复选框中的其他值相加

e.g Assume these are five checkboxes

1800
1200
2000 (if checked, multiply by 4)
3400
2000 (if checked, multiply by 4)
例如,如果从上到下勾选前3个复选框,则显示的值应为1800,然后为3000,因为2000将乘以4,因此得到11000。(即1800+1200+8000)。未选中复选框时,也应自动减去显示的值


如何实现这一点?

您需要对选中的项目进行迭代,然后将其合计

var $cs = $('.charge').change(function () {
    var v = 0;
    $cs.filter(':checked').each(function () {
        v += $(this).data('cash');
    })
    $('.total').html(v);
});
演示:


没有循环的另一个选项是

var $cs = $('.charge').change(function () {
    var total = +$('.total').html().trim() || 0,
        v = $(this).data('cash');
    if (this.checked) {
        total += v
    } else {
        total -= v;
    }
    $('.total').html(total);
});

演示:

您需要对选中的项目进行迭代,并将其合计

var $cs = $('.charge').change(function () {
    var v = 0;
    $cs.filter(':checked').each(function () {
        v += $(this).data('cash');
    })
    $('.total').html(v);
});
演示:


没有循环的另一个选项是

var $cs = $('.charge').change(function () {
    var total = +$('.total').html().trim() || 0,
        v = $(this).data('cash');
    if (this.checked) {
        total += v
    } else {
        total -= v;
    }
    $('.total').html(total);
});

演示:

你试过什么吗?@MikeMcCaughan没有。我的有一些进一步的操作。将值乘以其他值。所以你的问题是如何将值相乘?或者您不知道如何获取所选复选框?如果是后者,那么它是所提供问题的副本。如果前者。。。我不知道该说什么。你试过什么吗?@MikeMcCaughan-no。我的有一些进一步的操作。将值乘以其他值。所以你的问题是如何将值相乘?或者您不知道如何获取所选复选框?如果是后者,那么它是所提供问题的副本。如果前者。。。我不知道该说什么。把一些值乘以4怎么样?@Richie你怎么知道哪个值要乘以。。。是否有类或属性表明我使用了属性。现在一切都好了。把一些值乘以4怎么样?@Richie你怎么知道哪个值应该乘以。。。是否有类或属性表明我使用了属性。现在一切都好了。