Es ist nicht schön, aber ein Work around ist, an keydown
zu binden, um zu erfassen, welche Taste gedrückt wurde, und input
, wenn Sie den Wert erhalten möchten, einschließlich des eingegebenen Schlüssels:
Wenn Sie 'a' eingeben, geschieht Folgendes:
keydown
feuert. e.keyCode
wird auf den ASCII-Wert der gedrückten Taste gesetzt. this.value
ist ''
(d. h. dasselbe, bevor 'a' eingegeben wurde). input
feuert. e.keyCode
ist undefined
. this.value
ist 'a'
. Sie können auch manuell ein Ereignis input
auslösen, wenn die Eingabetaste (13) gedrückt wird. input
wird standardmäßig nicht von diesem Schlüssel ausgelöst.
Ich schlage vor, das Ereignis keypress
in Browsern mit Touchscreens zu verwenden. Ich weiß, dass Sie Touchscreen-Bildschirme nicht wirklich erkennen können lässt Sie mit ein paar Optionen, die Ihre Situation wahrscheinlich diktieren wird.
keyup
und keypress
hinzu. Dies hängt wahrscheinlich davon ab, wie viel Daten verarbeitet werden und ob in einigen Browsern Doppelbrände auftreten. change
. In jedem Fall erhalten Sie zwei Ereignis-Listener.
Tags und Links javascript jquery ios9 keyup onkeyup