我在获取不同复选框被选中时的值时遇到了一点问题。这是我的代码
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.js"></script>
<script>
$(document).ready(function(){
$('input[type="checkbox"]').bind('click',function()
{
var waterdm = $('#waterdm').val();
$("#price").val(waterdm);
});
});
</script>
<p><input type="checkbox" id="waterdm" name="waterdm" value="10" />Water Damage</p>
<p><input type="checkbox" id="screendm" name="screendm" value="20" />Screen Damage</p>
<p><input type="checkbox" id="Chargerdm" name="Chargerdm" value="30" />Charger Damage</p>
<p><input type="checkbox" id="hdphdm" name="hdphdm" value="10" />Headphone Damage</p>
<p>
Calculated Price: <input type="text" name="price" id="price" />
</p>
我想要的是每当用户 checkin 复选框时,我需要获取这些值并将 checkin 到另一个输入框的每个复选框值的总和显示出来。这意味着我需要对每个复选框的值求和 已选中。当用户取消选中任何复选框时,应从该总数中减去该值。我在 jquery 方面没有足够的经验。请帮助我。
最佳答案
您需要遍历复选框。当您谈论复选框时,change
事件更有意义。
使用 on
代替 bind
附加事件
$(document).ready(function () {
// cache the inputs and bind the events
var $inputs = $('input[type="checkbox"]')
$inputs.on('change', function () {
var sum = 0;
$inputs.each(function() {
// iterate and add it to sum only if checked
if(this.checked)
sum += parseInt(this.value);
});
$("#price").val(sum);
});
});
关于javascript - 如何获取不同复选框的值并计算那些选中的复选框的值并显示在输入字段中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17918580/