in INPUT-Feldern auf Tastatureingaben reagieren
Christian
- javascript
Hallo,
ich habe folgendes Problem:
Mein Input-Feld
<input name="sucheNach" type="text" id="sucheNach" onchange="springe(value)">
soll sofort nachdem eine Taste gedrückt wurde die JS-Methode "springe()" aufrufen und der aktuelle Wert des Feldes soll verarbeitet werden. (Sinn: In einem Select-Feld soll dann an die entsprechende Stelle gesprungen werden)
Leider funktioniert das bei mir nicht mit onChange, da onChange komischerweise erst ausgelöst wird, wenn die Eingabe fertig ist, also wenn der Fokus das Input-Feld verlässt. Und das verstehe ich nicht!
Wer kann mir da helfen?
Schöne Pfingsten und Grüße aus München!
Christian
hi,
Mein Input-Feld [...]
soll sofort nachdem eine Taste gedrückt wurde die JS-Methode "springe()" aufrufen [...]
Leider funktioniert das bei mir nicht mit onChange, da onChange komischerweise erst ausgelöst wird, wenn die Eingabe fertig ist, also wenn der Fokus das Input-Feld verlässt. Und das verstehe ich nicht!
die änderung ist eben erst beendet, wenn du deine eingabe fertig hast. onChange ist nicht dafür gedacht, bei jeder detailveränderung anzuspringen, sondern eben erst nach der kompletten änderung.
probiere es für deinen fall mal mit onKeyup im input-feld.
gruss,
wahsaga
Hi,
Leider funktioniert das bei mir nicht mit onChange, da onChange komischerweise erst ausgelöst wird, wenn die Eingabe fertig ist, also wenn der Fokus das Input-Feld verlässt. Und das verstehe ich nicht!
onKeyPress ist dein Freund: http://selfhtml.teamone.de/javascript/sprache/eventhandler.htm#onkeypress
HTH
wunderwarzenschwein
Hi,
<input name="sucheNach" type="text" id="sucheNach" onchange="springe(value)">
soll sofort nachdem eine Taste gedrückt wurde die JS-Methode "springe()" aufrufen und der aktuelle Wert des Feldes soll verarbeitet werden. (Sinn: In einem Select-Feld soll dann an die entsprechende Stelle gesprungen werden)
Leider funktioniert das bei mir nicht mit onChange, da onChange komischerweise erst ausgelöst wird, wenn die Eingabe fertig ist, also wenn der Fokus das Input-Feld verlässt. Und das verstehe ich nicht!
Es wäre nicht nur komisch, sondern falsch, wenn das Event onchange vor dem Fokus-Wechsel ausgelöst würde.
Das ist so definiert:
onchange = script [CT]
The onchange event occurs when a control loses the input focus and its value has been modified since gaining focus. This attribute applies to the following elements: INPUT, SELECT, and TEXTAREA.
(siehe auch: http://www.w3.org/TR/html401/interact/scripts.html#adef-onchange)
Wenn Du auf Tastendrücke reagieren willst, guck Dir die onkey... Eventhandler an.
cu,
Andreas