我希望每次选中一个复选框时运行这个jQuery函数,此时它只会在我第一次检查一个框时工作,下一个选中的框将不执行任何操作,依此类推。
这是我的jQuery:
$('#check').change(function () {
var price = $(this).data('price');
var currPrice = $('.pricedisplay').data('price');
$('.pricedisplay').text(price + currPrice);
});
和一个复选框:
<input type="checkbox" id="check" name="check-1" data-price="50">
我最终会有数百个复选框,因此我无法为每个复选框创建单独的函数。
先谢谢,我是jQuery的新手。
答案 0 :(得分:2)
id
是唯一的,您可以改用类:
<input type="checkbox" class="check" name="check-1" data-price="50">
然后你可以这样做:
$('.check').change(function () {
var price = $(this).data('price');
var currPrice = $('.pricedisplay').data('price');
$('.pricedisplay').text(price + currPrice);
});
答案 1 :(得分:1)
您发出的是重复ID - 页面上的每个ID都必须是唯一的。这会导致jQuery事件仅在具有该ID的第一个元素上触发。
使用类代码,您的代码将正常工作。