Stefan Einspender: Abschicken des Formulares über Enter verhindern

Beitrag lesen

Hallo ForumsleserInnen,

einer meiner Kunden hat den dringenden Wunsch, dass ein Formular nicht
mit Enter (Return) abgeschickt werden kann, wenn man sich in einem der
Formularfelder befindet und auf diese Taste drückt. Trotz meiner ein-
dringlichen Hinweise möchte er es so realisiert sehen :-/

Nun, ich bin leider nicht der große JavaScript-Kenner und so habe ich
jetzt eine Weile rumprobiert, aber so recht will es nicht klappen,
sowohl im Mozilla 1.0 als auch im MSIE 6.0 wird das Formular noch
abgeschickt, wenn ich auf Enter klicke.

Am vielversprechendsten erschien mir der Ansatz von Sven Rautenberg
(</archiv/2002/3/6828/#m37982>), nur auch da wird mein Formular abge-
schickt, wenn ich auf Enter klicke :-(

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>test</title>
<script type="text/javascript">
<!--
var abschicken=false;
//-->
</script>
</head>
<body>
  <form method="POST" action="test.php" onsubmit="return abschicken;">
    <p>Vorname Nachname:<br><input type="text" name="name" size="25"></p>
    <p>Telefon:<br><input type="text" name="telefon" size="25"></p>
    <p><input type="submit" value="Abschicken" onclick="abschicken=true;"></p>
  </form>
</body>
</html>

Das Erstaunliche (für mich zumindest *g*) dabei ist, dass es nicht
abgeschickt wird, wenn nur ein Formularfeld exisitiert, allerdings
benötige ich viele.

Hat jemand eine Idee, was ich hier ändern muß, damit das Abschicken
des Formulares bei Enter nicht stattfindet?

Ob dann einfach nichts passiert oder eine Meldung ausgegeben wird,
dass man das Formular über den Button abschicken soll, ist eigent-
lich egal.

Viele Grüße,
Stefan