Domanda Come posso sapere quale pulsante di opzione è selezionato tramite jQuery?


Ho due pulsanti di opzione e desidero postare il valore di quello selezionato. Come posso ottenere il valore con jQuery?

Posso ottenerli tutti così:

$("form :radio")

Come faccio a sapere quale è selezionato?


2288
2018-02-27 19:53


origine


risposte:


Per ottenere il valore del selezionato  radioName elemento di un modulo con ID myForm:

$('input[name=radioName]:checked', '#myForm').val()

Ecco un esempio:

$('#myForm input').on('change', function() {
   alert($('input[name=radioName]:checked', '#myForm').val()); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="myForm">
  <input type="radio" name="radioName" value="1" /> 1 <br />
  <input type="radio" name="radioName" value="2" /> 2 <br />
  <input type="radio" name="radioName" value="3" /> 3 <br />
</form>


3531
2018-02-27 19:58



Usa questo..

$("#myform input[type='radio']:checked").val();

369
2018-01-07 00:45



Se hai già un riferimento a un gruppo di pulsanti di opzione, ad esempio:

var myRadio = $("input[name=myRadio]");

Usa il filter() funzione, no find(). (find() serve per localizzare elementi figlio / discendenti, mentre filter() ricerca gli elementi di livello superiore nella selezione.)

var checkedValue = myRadio.filter(":checked").val();

Gli appunti: Questa risposta originariamente stava correggendo un'altra risposta che raccomandava l'uso find(), che sembra essere cambiato da allora. find() potrebbe ancora essere utile per la situazione in cui hai già un riferimento a un elemento contenitore, ma non ai pulsanti di opzione, ad esempio:

var form = $("#mainForm");
...
var checkedValue = form.find("input[name=myRadio]:checked").val();

256
2018-02-09 18:25



Questo dovrebbe funzionare:

$("input[name='radioName']:checked").val()

Nota il "" utilizzato attorno all'input: controllato e non "come la soluzione di Peter J"


118
2018-03-30 22:29



È possibile utilizzare il: selettore selezionato insieme al selettore radio.

 $("form:radio:checked").val();

69
2018-02-27 20:00



Se vuoi solo il valore booleano, cioè se è selezionato o non provare questo:

$("#Myradio").is(":checked")

42
2017-08-30 20:27



Ottieni tutte le radio:

var radios = jQuery("input[type='radio']");

Filtra per ottenere quello che viene controllato

radios.filter(":checked")

42
2017-09-01 17:55