Dass Web-Formulare mit dem Druck auf die Enter-Taste abgesendet werden können, obwohl sie vielleicht noch gar nicht zu Ende ausgefüllt worden sind, stört besonders diejenigen, die tagtäglich mit Programmen wie MS Excel zu tun haben. Excel?
Dort wechselt man zur nächsten Zeile nämlich nicht mit der Tab-Taste, sondern mit Enter. Um das Formular ein wenig sicherer zu machen, lässt sich die Eingabe abfangen und zur Not sogar abändern. So „glaubt“ das Formular schließlich, dass statt der Enter- die Tabulatortaste gedrückt wurde und springt weiter zum nächsten Feld.
Absenden lässt sich das Formular natürlich immer noch, entweder durch Klick mit der Maus oder mit dem Ausfüllen des letzten Feldes. Dann springt die Eingabemarke des Browsers automatisch auf den „Absenden“-Button und schickt bei gedrückter Enter-Taste die Daten ab. Der Trick liegt in dem Javascript-Handler onkeydown:
onkeydown="if(event.keyCode=='13')
event.keyCode=9;"
Ist der event.keycode der gedrückten Taste 13 (Enter), wird dieser in 9 (Tab) umgewandelt.
Beispiel:
<form
method="post">
<input name="nname" type="text"
value="Name:" onkeydown="if(event.keyCode=='13') event.keyCode=9;"><br>
<input
name="vname" type="text" value="Vorname:" onkeydown="if(event.keyCode=='13')
event.keyCode=9;"><br>
<input name="email" type="text"
value="Email:" onkeydown="if(event.keyCode=='13') event.keyCode=9;"><br>
<input
type="submit" value="absenden">
</form>
Wie hilfreich war dieser Beitrag?
Klicke auf die Sterne um zu bewerten!
Durchschnittliche Bewertung 0 / 5. Anzahl Bewertungen: 0
2 Antworten zu „Besuchereingabe abgefangen“
— was ist Deine Meinung?
Schön, aber bekanntlich laufen diese event.keyCode Manipulationen nicht im Firefox.
Wenn das doch so einfach wär… WTF?