Comment parcourir un groupe de boutons radio sans formulaire?

Comment parcourir en boucle un groupe de boutons radio sans formulaire en JavaScript ou jQuery?

Qu’en est-il quelque chose comme ça? (en utilisant jQuery):

$('input:radio').each(function() { if($(this).is(':checked')) { // You have a checked radio button here... } else { // Or an unchecked one here... } }); 

Vous pouvez également parcourir tous les boutons radio cochés comme ceci, si vous préférez:

 $('input:radio:checked').each(function() { // Iterate through all checked radio buttons }); 

… au cas où quelqu’un voudrait le faire sans jQuery (puisque cela faisait partie de la question):

Je ne suis pas sûr de ce que vous entendez par sans formulaire. Si vous voulez dire que vous ne voulez pas transmettre l’élément form à une fonction javascript , vous pouvez le faire comme ceci:

 for (var i = 0; i < document.form_name.radio_name.length; i++) { if (document.form_name.radio_name[i].checked) { // ... } } 

Si vous voulez dire sans formulaire car vous n'avez pas de nœud de formulaire, vous pouvez les envelopper dans un span (ou un div) et utiliser un code comme celui-ci:

 var span = document.getElementById("span_id"); var inputs = span.getElementsByTagName("input"); for (var i = 0; i < inputs.length; ++i) { if (inputs[i].checked) { // ... } } 

Je ne peux pas être trop sûr de ce que vous voulez dire, mais si vous voulez faire quelque chose pour tous les boutons radio d’une page, vous pouvez le faire:

 $("input:radio").each(function(){ //do something here });