我有大量的复选框,它们可以是选中状态(checked="checked"
)或者未选中状态。
我想获取所有复选框的数量,包括选中状态和未选中状态的数量。
这里所谓的复选框是指 <input type="checkbox" />
。
使用 jQuery 如何实现这个功能?
var numberOfChecked = $('input:checkbox:checked').length;
var totalCheckboxes = $('input:checkbox').length;
var numberNotChecked = totalCheckboxes - numberOfChecked;
编辑
甚至更简单
var numberNotChecked = $('input:checkbox:not(":checked")').length;
假设您有一个包含多个复选框的tr行,并且您只想在第一个复选框被选中时计数。
您可以给第一个复选框赋予一个类,以实现这一点
例如 class='mycxk'
然后您可以使用filter进行计数,如下所示
$('.mycxk').filter(':checked').length
以下代码对我起作用了。
$('input[name="chkGender[]"]:checked').length;
alert($('.checkbox_class_here:checked').size());
alert($('input[name=checkbox_name]').attr('checked'));
步骤:
alert($(":checkbox:checked").length);
var countChk = $('checkbox.myclassboxName:checked').length;
通过name属性:
var countByName= $('checkbox[name=myAllcheckBoxName]:checked').length;
$('checkbox.className').blur(function() {
//count only checked checkbox
$('checkbox[name=myAllcheckBoxName]:checked').length;
});
let myCheckboxList = $('.mycxk');
以便在myCheckboxList.filter(':checked').length
之后重用它。 - Sadiel