2012-05-16 5 views
8

Se ho il seguente jQuery mobile html;Ottieni il valore di un pulsante di opzione in jQuery mobile

<fieldset data-role="controlgroup" data-type="horizontal" name="Smoker" id="Smoker"> 
    <input name="radio3" id="radio3" value="Yes" type="radio" /> 
    <label for="radio3">Yes</label> 
    <input name="radiobuttons1" id="radio4" value="No" type="radio" /> 
    <label for="radio4">No</label> 
</fieldset> 

Ho pensato di poterlo fare in jQuery;

$("#Smoker").val() 

Tuttavia questo non produce alcun risultato. Devo in effetti bisogno di interrogare entrambi gli input per vedere quale è stato controllato o c'è un buon modo per fare questo jQuery Mobile?

risposta

17

provare

$("#Smoker :radio:checked").val(); 
+0

Brillante. Grazie – griegs

5

First tuoi pulsanti di opzione dovrebbero avere lo stesso attributo name, altrimenti selezionando uno non deselct l'altro, così invece di vostro codice attuale si dovrebbe avere qualcosa di simile a

<fieldset data-role="controlgroup" data-type="horizontal" name="Smoker" id="Smoker"> 
    <input name="smokerRdo" id="radio3" value="Yes" type="radio" /> 
    <label for="radio3">Yes</label> 
    <input name="smokerRdo" id="radio4" value="No" type="radio" /> 
    <label for="radio4">No</label> 
</fieldset> 

AS per ottenere il valore è la stessa di regolare jQuery, ma il tentativo di ottenere il valore del fieldset, non il gruppo radio, cercare invece

$('input[name=smokerRdo]:checked').val() 
+0

Questo non sembra funzionare – griegs

+0

I pulsanti radio non sono definiti correttamente, devono condividere lo stesso attributo nome. Ho aggiornato la mia risposta. – Jack

Problemi correlati