Frage Wie kann ich wissen, welcher Radiobutton über jQuery ausgewählt wurde?


Ich habe zwei Radiobuttons und möchte den Wert des ausgewählten posts posten. Wie kann ich den Wert mit jQuery erhalten?

Ich kann sie alle so bekommen:

$("form :radio")

Woher weiß ich, welches ausgewählt ist?


2289
2018-02-27 19:53


Ursprung


Antworten:


Um den Wert des zu erhalten ausgewählt  radioName Artikel eines Formulars mit ID myForm:

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

Hier ist ein Beispiel:

$('#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>


3532
2018-02-27 19:58



Benutze das..

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

369
2018-01-07 00:45



Wenn Sie bereits einen Verweis auf eine Optionsfeldgruppe haben, zum Beispiel:

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

Benutze die filter() Funktion, nicht find(). (find() dient zum Lokalisieren von Kind- / Nachkommen-Elementen, wohingegen filter() durchsucht Elemente auf oberster Ebene in Ihrer Auswahl.)

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

Anmerkungen: Diese Antwort korrigierte ursprünglich eine andere Antwort, die die Verwendung empfohlen hat find()Das scheint sich seitdem geändert zu haben. find() könnte für die Situation nützlich sein, in der Sie bereits einen Verweis auf ein Containerelement hatten, aber nicht auf die Optionsfelder, z. B .:

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

256
2018-02-09 18:25



Das sollte funktionieren:

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

Beachten Sie das "" um die Eingabe herum: "checked" und nicht "" wie die Lösung von Peter J.


118
2018-03-30 22:29



Sie können den Auswahlschalter: zusammen mit dem Radio-Selektor verwenden.

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

69
2018-02-27 20:00



Wenn Sie nur den booleschen Wert haben möchten, d. H. Wenn es aktiviert ist oder nicht, versuchen Sie Folgendes:

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

42
2017-08-30 20:27



Alle Radios erhalten:

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

Filter, um das zu erhalten, was überprüft wurde

radios.filter(":checked")

42
2017-09-01 17:55