我有大量的复选框,可以选中(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;
以下代码对我有用。
$('input[name="chkGender[]"]:checked').length;
假设您有一个包含多个复选框的tr行,并且只有在选中第一个复选框时才想要计数。
你可以通过给第一个复选框提供一个类来实现
例如class='mycxk'
,您可以使用过滤器计算,就像这样
$('.mycxk').filter(':checked').length
有多种方法可以做到这一点:
方法1:
alert($('.checkbox_class_here:checked').size());
方法2:
alert($('input[name=checkbox_name]').attr('checked'));
方法3:
alert($(":checkbox:checked").length);
你可以使用name属性,class,id或只是通用复选框来完成它;如果您只想计算已选中的复选框数。
按类名:
var countChk = $('checkbox.myclassboxName:checked').length;
按名称属性:
var countByName= $('checkbox[name=myAllcheckBoxName]:checked').length;
$('checkbox.className').blur(function() {
//count only checked checkbox
$('checkbox[name=myAllcheckBoxName]:checked').length;
});