Heim >Web-Frontend >js-Tutorial >Wie kann man deaktivierte Optionsfeldwerte mit OnChange-Ereignissen verfolgen?

Wie kann man deaktivierte Optionsfeldwerte mit OnChange-Ereignissen verfolgen?

DDD
DDDOriginal
2024-10-29 03:57:02371Durchsuche

How to Track Deselected Radio Button Values with OnChange Events?

Problemumgehung für das OnChange-Ereignis im Optionsfeldwert

Bei der Verwendung von Optionsfeldern mit demselben Namen kann es beim onChange-Ereignis zu einer Einschränkung kommen Wird nicht ausgelöst, wenn ein Optionsfeld deaktiviert ist. Dies kann zu Schwierigkeiten bei der Verfolgung des zuvor ausgewählten Werts führen.

Lösungsansatz

Um dieses Problem zu überwinden, können Sie eine Kombination von Techniken verwenden:

  1. Über Optionsfelder iterieren: Mit JavaScript über alle Optionsfelder mit demselben Namen iterieren.
  2. Ereignis-Listener für Änderungen: Fügen Sie einen Ereignis-Listener für das Änderungsereignis hinzu zu jedem Optionsfeld.
  3. Vorheriges Radio:Initialisieren Sie eine Variable, prev, außerhalb des Ereignis-Listeners, um zunächst einen Nullwert zu speichern.
  4. Innerhalb Ereignis-Listener:Im Ereignis-Listener finden die folgenden Aktionen statt:

    • Wenn ein vorheriger Wert vorhanden ist, protokollieren Sie seinen Wert in der Konsole.
    • Aktualisieren Sie den vorherigen Wert auf das aktuelle Optionsfeld.
    • Protokollieren Sie den Wert des aktuellen Optionsfelds in der Konsole.

Codebeispiel:

<code class="js">var rad = document.myForm.myRadios;
var prev = null;
for (var i = 0; i < rad.length; i++) {
    rad[i].addEventListener('change', function() {
        (prev) ? console.log(prev.value): null;
        if (this !== prev) {
            prev = this;
        }
        console.log(this.value);
    });
}

Beispielformular:

<code class="html"><form name="myForm">
  <input type="radio" name="myRadios"  value="1">
  <input type="radio" name="myRadios"  value="2">
</form></code>

Zusätzliche Hinweise:

  • Mit diesem Ansatz können Sie beides verfolgen zuvor ausgewählte und die neu ausgewählten Optionsfeldwerte.
  • Das Konzept kann erweitert werden, um mehrere Gruppen von Optionsfeldern zu verarbeiten.

Das obige ist der detaillierte Inhalt vonWie kann man deaktivierte Optionsfeldwerte mit OnChange-Ereignissen verfolgen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn