it-swarm.com.de

Jquery, So deaktivieren Sie alle Optionsfelder in der Radiogruppe

Weiß jemand, wie man alle Optionsfelder in einer Funkgruppe abwählen kann?

HTML:

<div id="emptimfields">
              <label id="lbl_emptim">How regulary do you employ people to help cultivate your land? </label><br/><br/>

             <fieldset data-role="controlgroup" data-type="vertical" id="emptim">

              <input name="emptim" id="radio1" value="fromtimetotime" type="radio" openmrs-valuecoded="" />
              <label for="radio1"> From time to time </label>

              <input name="emptim" id="radio2" value="allthetime" type="radio" openmrs-valuecoded="" />
              <label for="radio2">All the time</label>

              <input name="emptim" id="radio3" value="dontknow" type="radio" openmrs-valuecoded="" />
              <label for="radio3"> Don't know </label> 
            </fieldset>
        </div>

JQuery-Seite:

$('input:radio[name=emptim]:checked').prop('checked', false); // doesn't work 

Mir fehlt sicherlich etwas grundlegendes, aber ich kann nicht herausfinden, was das Problem ist.

Zuerst überprüfe ich Ja und dann einen Wert der zweiten Funkgruppe: 

enter image description here

Dann überprüfe ich Nein, um die zweite Funkgruppe auszublenden:

enter image description here

Dann, wenn ich auf Weiter klicke, bekomme ich den Wert von dem, was ich überprüft habe (aber ich habe vorher keine Option ausgewählt, daher möchte ich hier keine Warnmeldung. Ich möchte, dass der RadioButton "Von Zeit zu Zeit" deaktiviert wird):

enter image description here

Wenn ich wiederkomme, geschah nichts:

enter image description here

36
Alexis C.

Sie können ihnen einen Klassennamen geben und versuchen:

$('.classname').prop('checked', false);

Wenn Sie eine ältere Version von jQuery als 1.6 verwenden, muss dies Folgendes sein:

 $('<selector>').attr('checked', false);

BEARBEITEN:

Rufen Sie die Methode .checkboxradio("refresh"); auf, die auch für mich funktioniert hat.

71
Roel
$('input:radio[name=indicatorType]').each(function () { $(this).prop('checked', false); });

Alternative Lösung zum Erstellen von ungeprüften ganzen Optionsfeldern einer Funkgruppe ("IndicatorType" für das obige Codebeispiel).

11
user1841830

Das sollte es tun. Beachten Sie die Aktualisierungsoption am Ende, um die Aktualisierung der Kontrollgruppe zu erzwingen. 

Ein weiterer Vorteil dieser Methode ist, dass sie eine bestimmte Funkgruppe nach Namen anspricht und nicht auf alle Steuerelemente auf einer Seite.

$('input:radio[name=emptim]:checked').prop('checked', false).checkboxradio("refresh");
4
Phill Healey

Die Requisite funktioniert nicht für mich, dadurch funktioniert sie perfekt:

('input:radio[name="RadioName"]').each(function () { $(this).attr('checked', false); });
0
Jaggana