Ich habe ein Eingabefeld, in dem ich das Schlüsselereignis auslösen kann. Bei der Eingabe verarbeite ich einen bestimmten Code mit dem Eingabewert. Alles funktioniert super.
HAML:
%Vor%JavaScript:
%Vor%Aber jetzt möchte ich Dataist an diesem Eingang hinzufügen.
HAML:
%Vor% Das Problem ist, wenn ich auf Datenlisten navigieren, um ein Element auszuwählen, drücke ich die Eingabetaste.
Auf der Eingabetaste wird mein Listener aufgerufen und verarbeitet meinen Code mit dem Anfangswert der Eingabe.
In diesem Schritt ist der Wert des Felds leer. Danach wird der Wert durch den in der Datenliste ausgewählten Wert ersetzt.
Meine Fragen sind also:
Gibt es eine Möglichkeit, das Verhalten des Datengebers zu ändern, um den Eingabewert durch den ausgewählten Wert des Datenträgers zu ersetzen, ohne die Eingabetaste zu drücken? (Eingabe-Taste für Datenliste deaktivieren)
Gibt es eine Möglichkeit zu erkennen, wann der Datalist aktiv (oder sichtbar) ist, um ein anderes Verhalten in meinem EventListener zu verarbeiten?
Keypress
wird ausgelöst, nachdem Sie die Taste gedrückt haben, aber bevor die Daten im Feld registriert werden.
Keyup
event wird ausgelöst, nachdem Sie die Taste gedrückt haben, aber nachdem die Daten im Feld
HTML:
%Vor%JS:
%Vor%Tags und Links javascript html5 html-datalist