如何使用jQuery计算复选框?

时间:2011-11-04 15:18:25

标签: jquery checkbox count checked

我有大量的复选框已经过检查(checked="checked")或未经检查。

我想获取所有复选框的数量,取消选中并选中复选框。

使用复选框,我的意思是<input type="checkbox" />

如何用jQuery做到这一点?提前谢谢!

5 个答案:

答案 0 :(得分:131)

你可以这样做:

var numberOfChecked = $('input:checkbox:checked').length;
var totalCheckboxes = $('input:checkbox').length;
var numberNotChecked = totalCheckboxes - numberOfChecked;

修改

甚至简单

var numberNotChecked = $('input:checkbox:not(":checked")').length;

答案 1 :(得分:10)

以下代码对我有用。

$('input[name="chkGender[]"]:checked').length;

答案 2 :(得分:7)

假设您有一个包含多个复选框的tr行,并且只有在选中第一个复选框时才想要计数。

您可以通过向第一个复选框提供课程来实现这一目标

例如 class='mycxk'您可以使用过滤器计算,例如

$('.mycxk').filter(':checked').length

答案 3 :(得分:2)

有多种方法可以做到这一点:

方法1:

alert($('.checkbox_class_here:checked').size());

方法2:

alert($('input[name=checkbox_name]').attr('checked'));

方法3:

alert($(":checkbox:checked").length);

答案 4 :(得分:0)

You can do it by using name attibute, class, id or just universal checkbox; If you want to count only checked number of checkbox.

By the class name :

var countChk = $('checkbox.myclassboxName:checked').length;

By name attribute :

var countByName= $('checkbox[name=myAllcheckBoxName]:checked').length;

Complete code

$('checkbox.className').blur(function() {
    //count only checked checkbox 
    $('checkbox[name=myAllcheckBoxName]:checked').length;
});