• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Deaktivierung von Enter

Status
Für weitere Antworten geschlossen.

pepe-je

Neues Mitglied
Ich habe eine Frage.
Mit dem folgenden Codeschnipsel werden die Eintragungen in die 7 Felder eines Formulars durch Selbstaufruf der Seite zurückgeleitet (Dort werden sie dann in eine Datenbank eingetragen).

<form action="Seite_6.php" method="post">

<input class= "feld1" type="text" name="feld1" value="">
<input class= "feld2" type="text" name="feld2" value="">
<input class= "feld3" type="text" name="feld3" value="">
<input class= "feld4" type="text" name="feld4" value="">
<input class= "feld5" type="text" name="feld5" value="">
<input class= "feld6" type="text" name="feld6" value="">
<input class= "feld7" type="text" name="feld7" value="">

<div class="unten">
<input type="hidden" name="self_call" value="yes">
<input class="weiter" type= "submit" value ="Weiter">
</input>
</div>
</form>

Der Selbstaufruf soll durch Klicken auf die Taste "Weiter" erfolgen. Aber das Betätigen der Enter-Taste hat den gleichen Effekt. Das soll nicht sein!!!! Wie kann ich die Enter-Taste deaktivieren?
Kann mir jemand mit einer Idee helfen? Schon jetzt vielen Dank
pepe-je
 
Der Selbstaufruf soll durch Klicken auf die Taste "Weiter" erfolgen. Aber das Betätigen der Enter-Taste hat den gleichen Effekt. Das soll nicht sein!!!!

Warum das? Wenn das den selben Effekt hat, wo ist dann der Unterschied? Wenn jemand ein Formular abschickt, kann er das mit der ENTER-Taste machen. So ist das überall, warum muss das bei Dir anders sein? Warum willst Du, dass sich mein Client anders verhält?

Ich wüsste nicht, dass das geht, wenn dann am ehesten noch mit JavaScript, aber das kann man ja glücklicherweise abstellen. Nur den Sinn verstehe ich beim besten Willen nicht.

Gruß,
-Efchen
 
Der Grund ist der: Der Nutzer soll die 7 Felder ausfüllen. Dazu muß er nacheinander auf die Felder klicken. Manche sind aber gewöhnt, eine Eingabe durch Enter zu bestätigen. Dann wird die Seite erneut aufgerufen, ohne dass alle Einträge erfolgt sind. Das ist dann ein Fehler. Deshalb soll allein die Taste "Weiter" den Aufruf bewirken
 
Ach so, Du willst zusätzliche Sicherungen einbauen, falls Deine Besucher ihren Browser nicht beherrschen? Das halte ich für überflüssig. Man sollte seinen Browser schon beherrschen. Wenn man aber Funktionen des Browsers für DAUs ausschaltet, schaltet man sie auch für Profis aus, und die sind dann nur genervt (Stichwort: rechte Maustaste).

Was Du aber natürlich auf jeden Fall machen solltest, und das solltest Du auch weiter verfolgen, anstatt nach einer Lösung zu suchen, die Tasten deaktiviert, ist Deinen Formularinhalt auf Gültigkeit zu überprüfen.
Bei eigentlich jedem Formular muss serverseitig die Richtigkeit der Eingaben geprüft werden, damit eine Fehlbedienung nicht zum Absturz Deiner Anwendung kommt (oder halt ungültige Daten versucht in die Datenbank einzutragen o.ä.). Wenn Du das hast, dann ist Dir das egal, wenn jemand nach dem ersten Feld schon ENTER drückt. Das ist dann sein Problem, er muss schon die Software beherrschen, die er bedienen will.

Schönen Abend,
-Efchen
 
Deaktivieren von Enter

Naja, die Sache ist deshalb nicht ganz so einfach, weil nicht alle Felder ausgefüllt sein müssen. Also, wenn sogar nur eines ausgefüllt ist, kann das vom Nutzer gewollt sein. Es wäre also eine Fehlermeldung dann nicht sinnvoll. Aber es passiert, dass der Nutzer nach dem Aufüllen des ersten Feldes noch weitere Felder ausfüllen möchte, aber auf Enter drückt und das Formular abgeschickt wird. Ja, das ist ein Fehler des Nutzers, aber damit muß man eben rechnen und ich möchte das abfangen.
 
Wenn ich mich recht entsinne reagiert <button> nicht auf die Entertaste. Setz den mal statt dem input submit ein.
 
Guten Morgen!

Aber es passiert, dass der Nutzer nach dem Aufüllen des ersten Feldes noch weitere Felder ausfüllen möchte, aber auf Enter drückt und das Formular abgeschickt wird. Ja, das ist ein Fehler des Nutzers, aber damit muß man eben rechnen und ich möchte das abfangen.

Warum?

Wie willst Du ein Computerprogramm prüfen lassen, was im Hirn des Nutzers vor sich geht? Du sagst, dass es durchaus erlaubt ist, dass jemand nur ein Feld ausfüllt, willst das aber abfangen, dass er das möglicherweise nicht will. Woher willst Du wissen, ob er das will? Wenn aber nun jemand kommt, nur ein Feld ausfüllt und dann das Formular mit ENTER abschicken will? Der denkt sich "Oh, blöde Website, das Formular funktioniert nicht" und ist weg.

Du kannst nicht Fehlbedienungen vereinzelter Nutzer denen zur Last legen, die sich mit der Software auskennen. Wie soll man sich denn noch an einen Browser gewöhnen, wenn der sich auf jeder Website anders verhalten würde, weil jeder Webmaster irgendwelche Abfragen für DAUs einbauen will?

Ich halte Dein Vorhaben im höchsten Maße für unsinnig.

Gruß,
-Efchen
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben