Heim >Web-Frontend >js-Tutorial >Wie kann ich Eingabeänderungen in jQuery in Echtzeit erkennen?
Erkennung von Eingabeänderungen in jQuery in Echtzeit
Das Erkennen von Eingabeänderungen in jQuery kann auf den ersten Blick einfach erscheinen, kann jedoch bei Bedarf eine Herausforderung darstellen Sie möchten sofort auf Wertänderungen reagieren. Das .change-Ereignis wird erst ausgelöst, nachdem die Eingabe den Fokus verliert, was möglicherweise nicht für Ihre spezifischen Anforderungen geeignet ist.
Methode 1: Eingabeereignis
Für moderne Browser ist das Eingabeereignis ist die empfohlene Lösung. Es wird immer dann ausgelöst, wenn sich der Eingabewert ändert, auch beim Tippen, Einfügen oder Rückgängigmachen, und sorgt so für eine unmittelbarere Reaktion.
$('#someInput').on('input', function() { // Get the current value of the input field });
Methode 2: Keyup-Ereignis
Älter Browser erfordern das Keyup-Ereignis. Es kann jedoch zu Fehlalarmen kommen, wenn Tasten wie „Umschalt“ losgelassen werden, und es können Änderungen übersehen werden, die über Rechtsklick-Kontextmenüs vorgenommen werden.
$('#someInput').keyup(function() { // Get the current value of the input field });
Methode 3: Timer
Um die Einschränkungen von Keyup zu überwinden, können Sie einen Timer (z. B. setInterval oder setTimeout) verwenden, um regelmäßig auf Wertänderungen zu prüfen. Dieser Ansatz kann jedoch zu Leistungseinbußen führen.
let timer; $('#someInput').on('focus', function() { timer = setInterval(function() { // Check for value changes }, 100); }).on('blur', function() { clearInterval(timer); });
Das obige ist der detaillierte Inhalt vonWie kann ich Eingabeänderungen in jQuery in Echtzeit erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!