J'ai des tonnes de cases à cocher qui sont soit cochées (checked="checked"
) ou décochée.
Je voudrais obtenir le nombre de toutes les cases à cocher, cases à cocher et cochées.
Avec case à cocher, je veux dire <input type="checkbox" />
.
Comment le faire avec jQuery? Merci d'avance!
Vous pourriez faire:
var numberOfChecked = $('input:checkbox:checked').length;
var totalCheckboxes = $('input:checkbox').length;
var numberNotChecked = totalCheckboxes - numberOfChecked;
MODIFIER
Ou même simple
var numberNotChecked = $('input:checkbox:not(":checked")').length;
Le code suivant a fonctionné pour moi.
$('input[name="chkGender[]"]:checked').length;
Supposons que vous avez une ligne tr avec plusieurs cases à cocher et que vous souhaitez compter uniquement si la première case est cochée.
Vous pouvez le faire en donnant une classe à la première case à cocher
Par exempleclass='mycxk'
et vous pouvez compter qu'en utilisant le filtre, comme ceci
$('.mycxk').filter(':checked').length
Il existe plusieurs méthodes pour le faire:
Méthode 1:
alert($('.checkbox_class_here:checked').size());
Méthode 2:
alert($('input[name=checkbox_name]').attr('checked'));
Méthode 3:
alert($(":checkbox:checked").length);
Vous pouvez le faire en utilisant l'attribut de nom, la classe, l'id ou simplement une case à cocher universelle; Si vous voulez compter uniquement coché nombre de cases à cocher.
Par le nom de la classe:
var countChk = $('checkbox.myclassboxName:checked').length;
Par nom attribut:
var countByName= $('checkbox[name=myAllcheckBoxName]:checked').length;
$('checkbox.className').blur(function() {
//count only checked checkbox
$('checkbox[name=myAllcheckBoxName]:checked').length;
});