Aufruf einer Funktion nach Verlassen des Eingabefeldes

Lesezeit: 1 Minute

Auf einem Kontaktformular habe ich mehrere Eingabefelder. Eines dieser Felder ist ein E-Mail-Adressfeld:

<input type="text" name="input_email" onChange={this.validateEmail}/>

Im Moment habe ich die E-Mail-Validierungsfunktion auf das onChange-Attribut gesetzt. Während der Benutzer Zeichen in das E-Mail-Feld eingibt, erscheint daher die ganze Zeit eine Fehlermeldung.

Ich möchte dies und das ändern this.validateEmail wird nur einmal aufgerufen, wenn der Benutzer dieses bestimmte Eingabefeld verlässt. Wie würde ich das erreichen?

Ich kann keine Standardobjektereignisse finden, die dieses Problem lösen würden.

FYI, mit ReactJS

  • Verwenden onblur

    – Bert

    5. August 2016 um 14:40 Uhr

Sie können verwenden onblur() oder onfocusout(). Es ruft die Funktion auf, sobald Sie aus diesem Textfeld herausklicken.

Beispiel:

function myFunction() {
    var x = document.getElementById("sometext");
    x.value = x.value.toUpperCase();
}
<input type="text" id="sometext" onfocusout="myFunction()">

Hinweis: Ab React 16 wurden onFocusIn und onFocusOut jeweils durch onFocus und onBlur ersetzt. Somit hast du jetzt:

<input type="text" name="input_email" onBlur={this.validateEmail}/>

Benutzeravatar von Ian
Jan

Wenn Sie nur JavaScript verwenden möchten:

document.getElementById("id").addEventListener("blur", function() {
  alert("Hello World")
});

1429950cookie-checkAufruf einer Funktion nach Verlassen des Eingabefeldes

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy