Ich frage mich nur, ob jemand weiß, welche Ereignisse ein HTML5- <input type="number" />
Element auslöst, wenn auf die Aufwärts- / Abwärtspfeile geklickt wird:
Ich verwende bereits ein onblur
für, wenn der Fokus das Eingabefeld verlässt.
javascript
html
Ian Oxley
quelle
quelle
Antworten:
change
wäre das Ereignis, das ausgelöst wird, wenn sich der Wert des Feldes ändert.Ich denke, das HTML5-Ereignis
input
würde auch ausgelöst.quelle
oninput
ausgelöst, wenn auf die Pfeile "Auf" und "Ab" geklickt wird.change
wird nicht ausgelöst, wenn der Wert eingegeben wird, sondern nur, wenn auf die Schaltflächen geklickt wird (zumindest in Firefox).input
ist wie eine Fusion zwischenkeyup change
Ich fand heraus, dass für jQuery der folgende Code Tastatureingaben, Mausradänderungen und Tastenklicks in Chrome sowie Tastatureingaben in Firefox abdeckte
quelle
.bind()
jetzt zugunsten von.on()
Ich habe das gefunden
onkeyup
undonchange
alles in Chrome 19 behandelt. Dies behandelt die direkte Werteingabe, das Drücken der Pfeiltasten nach oben, das Klicken auf die Schaltflächen und das Scrollen des Mausrads.onchange
allein würde in Chrome ausreichen, aber andere Browser, die das Feld nur als Textfeld rendern, benötigen dieonkeyup
Bindung, die perfekt funktioniert, um den neuen Wert zu lesen.Die
mousewheel
Veranstaltung separat zu binden war weniger erfolgreich. Das Ereignis wurde zu früh ausgelöst - bevor der Feldwert aktualisiert wurde - und gab daher immer den vorherigen Wert des Felds anquelle
Das
onchange
Ereignis wird bei Unschärfe ausgelöst, aber dasoninput
Ereignis wird während der Eingabe ausgelöst. Vielleicht möchten Sie einen Timer auf dasoninput
Ereignis setzen und Ihronchange
Ereignis auslösen , wenn der Benutzer für eine Sekunde aufgehört hat zu tippen?quelle
Es gibt einen aktuellen Fehler in Edge, der verhindert, dass Änderungen oder Eingaben ausgelöst werden, wenn die Pfeiltasten in einer Zahleneingabe verwendet werden.
quelle