Utiliser jquery pour obtenir toutes les cases cochées avec un certain nom de classe

Je sais que je peux obtenir toutes les cases cochées sur une page en utilisant ceci:

$('input[type=checkbox]').each(function () { var sThisVal = (this.checked ? $(this).val() : ""); }); 

Mais je l’utilise maintenant sur une page qui comporte d’autres cases à cocher que je ne souhaite pas inclure. Comment changer le code ci-dessus pour ne regarder que les cases cochées qui ont une certaine classe sur eux?

$('.theClass:checkbox:checked') vous donnera toutes les cases cochées avec la classe theClass .

 $('input:checkbox.class').each(function () { var sThisVal = (this.checked ? $(this).val() : ""); }); 

Un exemple à démontrer.

:checkbox est un sélecteur pour les cases à cocher (en fait, vous pouvez omettre la partie input du sélecteur, bien que je trouve des cas particuliers où vous obtiendrez des résultats étranges dans les versions précédentes). versions). .class est le sélecteur pour l’atsortingbut de classe d’élément contenant la class .

Exemple .map obligatoire:

 var checkedVals = $('.theClass:checkbox:checked').map(function() { return this.value; }).get(); alert(checkedVals.join(",")); 
 $('input.yourClass:checkbox:checked').each(function () { var sThisVal = $(this).val(); }); 

Cela obtiendrait toutes les cases à cocher du nom de classe “yourClass”. J’aime cet exemple car il utilise le sélecteur jQuery vérifié au lieu de faire une vérification conditionnelle. Personnellement, j’utiliserais aussi un tableau pour stocker la valeur, puis les utiliser comme vous le souhaitez, comme:

 var arr = []; $('input.yourClass:checkbox:checked').each(function () { arr.push($(this).val()); }); 

Si vous devez obtenir la valeur de toutes les cases à cocher cochées en tant que tableau:

 let myArray = (function() { let a = []; $(".checkboxes:checked").each(function() { a.push(this.value); }); return a; })() 
  $('input.myclass[type=checkbox]').each(function () { var sThisVal = (this.checked ? $(this).val() : ""); }); 

Voir les sélecteurs de classe jQuery .

  $('input.theclass[type=checkbox]').each(function () { var sThisVal = (this.checked ? $(this).val() : ""); }); 

Je ne suis pas sûr que cela aide pour votre cas particulier et je ne suis pas sûr que, dans votre cas, les cases à cocher que vous souhaitez inclure ne font toutes qu’un seul formulaire ou div ou tableau, mais vous pouvez toujours sélectionner toutes les cases à cocher. à l’intérieur d’un élément spécifique. Par exemple:

 

Ensuite, en utilisant le jQuery suivant, il passe UNIQUEMENT par les cases à cocher dans cet UL avec id = “selective”:

 $('#selective input:checkbox').each(function () { var sThisVal = (this.checked ? $(this).val() : ""); }); 

Je sais que cela a déjà un tas de bonnes réponses à cette question, mais j’ai trouvé cela en parcourant les pages et je trouve que c’est très facile à utiliser. Je pensais que je partagerais pour tout le monde à la recherche.

HTML:

 
Check all
Checkbox
Checkbox
Checkbox
Checkbox
Checkbox
Checkbox

jQuery:

 $(function () { $('.checkall').on('click', function () { $(this).closest('fieldset').find(':checkbox').prop('checked', this.checked); }); }); 

Référence: Plus simple “Vérifier tout” avec jQuery

        

http://www.jqueryfaqs.com/Articles/Get-values-of-all-checked-checkboxes-by-class-name-using-jQuery.aspx

Vous pouvez utiliser quelque chose comme ceci:
HTML:

 

JQuery:

 $(".yourClass:checkbox").filter(":checked") 

Il choisira des valeurs de 1 et 3.

Un moyen simple d’obtenir toutes les valeurs dans un tableau

 var valores = (function () { var valor = []; $('input.className[type=checkbox]').each(function () { if (this.checked) valor.push($(this).val()); }); return valor; })(); console.log(valores);