我将使用jQuery执行以下操作:
单击“复选框”类的元素:
我的示例代码并未显示所有此功能,但除了更新已单击/“未单击”的数字外,我能够完成此操作。
`
$("span.checkbox").click(function() {
if(!oldVal) {
var oldVal = "0";
}
var newVal = parseFloat(oldVal) + 1;
var oldVal = newVal;
$("#wishlistapps").html('<li>You have ' + newVal + ' apps in your request list</li>');
});
`
答案 0 :(得分:2)
您需要在点击处理程序之外声明您的计数器变量。当前的方式,oldVal
在调用处理程序时总是为零。
var totalChecked = 0;
$("span.checkbox, span.checkmark").click(function() {
var el = $(this);
if(el.hasClass('checkbox')) {
el.removeClass('checkbox');
el.addClass('checkmark');
totalChecked++;
} else {
el.removeClass('checkmark');
el.addClass('checkbox');
totalChecked--;
}
$("#wishlistapps").html('<li>You have ' + totalChecked + ' apps in your request list</li>');
});
您也可以像我在上面的评论中所说的那样使用$('.checkmark').length
,但许多复选框可能会变慢。