3067 Stimmen

Wie kann ich wissen, welche Optionsschaltfläche über jQuery ausgewählt ist?

Ich habe zwei Optionsfelder und möchte den Wert des ausgewählten Feldes ausgeben. Wie kann ich den Wert mit jQuery erhalten?

Ich kann sie alle auf diese Weise bekommen:

$("form :radio")

Woher weiß ich, welcher ausgewählt ist?

17voto

Ich habe ein jQuery-Plugin zum Setzen und Abrufen von Radio-Button-Werten geschrieben. Es respektiert auch die "Änderung" Ereignis auf sie.

(function ($) {

    function changeRadioButton(element, value) {
        var name = $(element).attr("name");
        $("[type=radio][name=" + name + "]:checked").removeAttr("checked");
        $("[type=radio][name=" + name + "][value=" + value + "]").attr("checked", "checked");
        $("[type=radio][name=" + name + "]:checked").change();
    }

    function getRadioButton(element) {
        var name = $(element).attr("name");
        return $("[type=radio][name=" + name + "]:checked").attr("value");
    }

    var originalVal = $.fn.val;
    $.fn.val = function(value) {

        //is it a radio button? treat it differently.
        if($(this).is("[type=radio]")) {

            if (typeof value != 'undefined') {

                //setter
                changeRadioButton(this, value);
                return $(this);

            } else {

                //getter
                return getRadioButton(this);

            }

        } else {

            //it wasn't a radio button - let's call the default val function.
            if (typeof value != 'undefined') {
                return originalVal.call(this, value);
            } else {
                return originalVal.call(this);
            }

        }
    };
})(jQuery);

Fügen Sie den Code irgendwo ein, um das Addin zu aktivieren. Dann viel Spaß! Es überschreibt einfach die standardmäßige val-Funktion, ohne etwas kaputt zu machen.

Sie können dieses jsFiddle besuchen, um es in Aktion zu erleben und zu sehen, wie es funktioniert.

Geige

15voto

 $(".Stat").click(function () {
     var rdbVal1 = $("input[name$=S]:checked").val();
 }

15voto

Manoj Punkte 4773

Das funktioniert gut

$('input[type="radio"][class="className"]:checked').val()

Arbeits-Demo

El :checked Selektor funktioniert für checkboxes , radio buttons und Elemente auswählen. Nur für Select-Elemente verwenden Sie die :selected Selektor.

API für :checked Selector

13voto

Rodrigo Dias Punkte 1281

So erhalten Sie den Wert des ausgewählten Radios, das eine Klasse verwendet:

$('.class:checked').val()

12voto

Lafif Astahdziq Punkte 3532

Ich verwende dieses einfache Skript

$('input[name="myRadio"]').on('change', function() {
  var radioValue = $('input[name="myRadio"]:checked').val();        
  alert(radioValue); 
});

0 Stimmen

Verwenden Sie das Klick-Ereignis anstelle des Änderungsereignisses, wenn Sie wollen, dass es in allen Browsern funktioniert

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X