137 votes

jQuery voir si aucune ou aucune case n'est cochée

Je sais comment voir si un individu case est cochée ou non.

Mais je vais avoir des ennuis avec la suite donnée par un code de formulaire j'ai besoin de voir si toutes les cases sont sélectionnés (j'.e 1 ou plus), et j'ai besoin de voir si aucun sont sélectionnés. Essentiellement, j'ai besoin de deux fonctions distinctes que répondre à ces deux questions. De l'aide serait appréciée. Merci!

En fait, je voudrais juste besoin d'une fonction pour me dire si aucun sont sélectionnés. Sachant cela permettrait de répondre à la question.

278voto

rahul Points 84185

Vous pouvez utiliser quelque chose comme ça

 if ($("#formID input:checkbox:checked").length > 0)
{
    // any one is checked
}
else
{
   // none is checked
}
 

32voto

Michael Logutov Points 632

JQuery .is testera tous les éléments spécifiés et renverra true si au moins l'un d'entre eux correspond au sélecteur:

 if ($(":checkbox[name='choices']", form).is(":checked"))
{
    // one or more checked
}
else
{
    // nothing checked
}
 

4voto

Rajesh C O Points 2330

Rahul la réponse est la meilleure solution pour votre question. De toute façon, si vous avez un groupe de cases à cocher pour vérifier et pas tous la case à cocher dans un formulaire, vous pouvez aller pour elle.

Mettre un nom de classe pour toutes les cases que vous souhaitez vérifier, par exemple, une classname test_check et vous pouvez maintenant vérifier si tout de la case est cochée appartenant au groupe par:

$("#formID .test_check:checked").length > 0

Si elle renvoie true, supposons qu'une ou plusieurs cases sont cochées avoir la classe test_check et aucun vérifié si les retours false.

Espérons que cela aide quelqu'un. Merci :)-

3voto

Nick Craver Points 313913

Vous pouvez faire un simple retour de l' .length ici:

function areAnyChecked(formID) {
  return !!$('#'+formID+' input[type=checkbox]:checked').length;
}

Ce regard pour les cases à cocher dans le formulaire, voit si l'un d' :checked et retours true s'ils sont (puisque la longueur de 0 sinon). Pour le rendre un peu plus clair, voici le non booléenne version convertie:

function howManyAreChecked(formID) {
  return $('#'+formID+' input[type=checkbox]:checked').length;
}

Ce serait le retour d'un compte de la façon dont beaucoup ont été vérifiées.

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