164 votes

Vérifier si toutes les cases sont cochées

Comment vérifier si toutes les cases avec class = "abc" sont cochées? J'ai besoin de vérifier chaque fois que l'un d'entre eux est coché ou décoché. Est-ce que je le fais par clic ou par changement?

307voto

cbrandolino Points 2983

Je pense que le moyen le plus simple est de vérifier cette condition:

 $('.abc:checked').length == $('.abc').length
 

Vous pouvez le faire chaque fois qu'une nouvelle case à cocher est cochée:

 $(".abc").change(function(){
    if ($('.abc:checked').length == $('.abc').length) {
       //do something
    }
};
 

116voto

Porco Points 2072
$('input.abc').not(':checked').length > 0

17voto

Mark Coleman Points 24469

Vous pouvez utiliser change()

 $("input[type='checkbox'].abc").change(function(){
    var a = $("input[type='checkbox'].abc");
    if(a.length == a.filter(":checked").length){
        alert('all checked');
    }
});
 

Tout ce que cela va faire est de vérifier que le nombre total de cases à cocher .abc correspond au nombre total de .abc:checked .

Exemple de code sur jsfiddle .

5voto

manji Points 26778
$('.abc[checked!=true]').length == 0

5voto

david Points 3830

Partie 1 de votre question:

 var allChecked = true;
$("input.abc").each(function(index, element){
  if(!element.checked){
    allChecked = false;
    return false;
  } 
});
 

MODIFIER:

La réponse ci-dessus (http://stackoverflow.com/questions/5541387/check-if-all-checkboxes-are-selected/5541480#5541480) est probablement meilleure.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X