daGrevis
daGrevis

Reputation: 21333

How to count check-boxes using jQuery?

I have tons of checkboxes that are either checked (checked="checked") or unchecked.

I would like to get the number of all checkboxes, unchecked and checked checkboxes.

With check-box I mean <input type="checkbox" />.

How can this be done with jQuery?

Upvotes: 64

Views: 195688

Answers (5)

CodeLover
CodeLover

Reputation: 161

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;
});

Upvotes: 2

Samuel Aiala Ferreira
Samuel Aiala Ferreira

Reputation: 694

Assume that you have a tr row with multiple checkboxes in it, and you want to count only if the first checkbox is checked.

You can do that by giving a class to the first checkbox

For example class='mycxk' and you can count that using the filter, like this

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

Upvotes: 21

Hasnain Mehmood
Hasnain Mehmood

Reputation: 417

There are multiple methods to do that:

Method 1:

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

Method 2:

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

Method 3:

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

Upvotes: 6

Nicola Peluchetti
Nicola Peluchetti

Reputation: 76880

You could do:

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

EDIT

Or even simple

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

Upvotes: 179

The following code worked for me.

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

Upvotes: 18

Related Questions