Holen Sie sich mit jquery einen Wert von der Funkgruppe


77

Ich versuche, den Wert der Funkgruppe mit Namen zu ermitteln managerelradio. Mein HTML-Code für diese Funkgruppe ist.

 <label><input type="radio" name="managerelradio" value="Yes" id="Add">Add</label>
 <label><input type="radio" name="managerelradio" value="No" id="Remove">Remove</label>

und Jquery dafür ist ..

    var manageradiorel = $('input[name = "managerelradio"]:checked' , '#managechildform').val();
 alert(manageradiorel);

es zeigt mich undefiniert.

Obwohl ich es auch als versucht habe.

 var manageradiorel = $('input[name = "managerelradio"]:checked').val();
 alert(manageradiorel);

Trotzdem bekomme ich einen undefinierten Wert.


Kannst du auch HTML posten? Dies wird uns helfen, das Problem zu verstehen
Null Pointer

Antworten:


142

Versuche dies

var manageradiorel = $("input:radio[name ='managerelradio']:checked").val();
alert(manageradiorel);

Bitte überprüfen Sie diese DEMO .. es wird gut funktionieren

Hinweis: Eines Ihrer Optionsfelder muss ausgewählt sein. Andernfalls wird undefiniert zurückgegeben

Sie können ein checkedAttribut verwenden, um ein Optionsfeld als Standard auszuwählen


es muss auch in einem Wechselereignis platziert werden, denke ich
Shameer

@ Shameer, das glaube ich nicht. Sie können die Demo sehen
Null Pointer

Es funktioniert für mich (auch ohne ein Wechselereignis), dies sollte die akzeptierte Antwort sein!
user3532637

+1, funktioniert. Wenn Sie nicht mehr als eine Schaltflächengruppe haben, können Sie die Namensangabe im Selektor weglassen.
Zelphir Kaltstahl

Es wäre schön, wenn jQuery klug genug wäre, um herauszufinden, dass es $("#managerelradio").val()nach dem Wert der Radiobutton-Gruppe sucht , aber da es nicht so klug ist, gibt es zumindest Logik in der Konstruktion dieses Selektors ...
FKEinternet

17

Für mich geht das

$('input[name="managerelradio"]').on('change', function(e) {

    var manageradiorel = e.target.value;
    alert(manageradiorel);

});

Exaple hier


Es funktioniert zwar, wenn ich die Änderungsfunktion für Funkgruppen verwende, aber es funktioniert nicht, wenn ich eine andere Änderungsfunktion wie Dropdown-Änderung einfüge.
Rahul Singh

@ Rahul: Ihr eines Ihrer Optionsfelder muss ausgewählt sein, um den Wert zu erhalten. Überprüfen Sie mein Update hier Link
Gowri

10

Eine kleine jQuery-Erweiterung, um dies ein wenig zu vereinfachen:

jQuery.fn.extend({
    groupVal: function() {
        return $(this).filter(':checked').val();
    }
});

// Usage:
$("input[name='managerelradio']").groupVal();

// Or even:
$("[name='managerelradio']").groupVal();
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.