2010-08-13 12 views

risposta

24

Che dire qualcosa di simile? (Usando jQuery):

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

È inoltre possibile scorrere tutti i pulsanti radio controllato come questo, se preferite:

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

non posso essere troppo sicuro di quello che vuoi dire, ma se si vuole fare qualcosa a tutti i pulsanti di opzione su una pagina si può fare questo:

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

Il selettore "radio" non restituirà nulla. Non c'è nessun elemento (tag) chiamato "radio" in HTML. È Topera

+0

$ (': radio') è equivalente a $ ('[tipo = radio]'). http://api.jquery.com/radio-selector/ –

+0

@Dumb Guy: Penso che @Topera si riferisse a una modifica precedente, che è stata corretta da @Razor Storm –

6

... nel caso in cui qualcuno vuole fare questo senza jQuery (dal era parte della domanda):

Non sono sicuro di cosa intendi per senza un modulo. Se vuoi dire che non si vuole pass the form element to a javascript function, si potrebbe fare così:

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

Se vuoi dire, senza un modulo come in non avete nodo modulo, si potrebbe avvolgere in un arco (o di un div) e utilizzare un codice come questo:

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