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

Absenden durch ENTER-Taste verhindern

ewigfragend

Neues Mitglied
Hallo,
ich habe folgendes Problem. Wenn jemand beim Ausfüllen des Fragebogens aus Versehen die ENTER-Taste drückt, weil er ins nächste Feld möchte, dann wird natürlich der Fragebogen abgesendet, ohne daß er beendend ausgefüllt wurde. Das führt irgendwie zu Frust bei den Ausfüllenden, was ich unbedingt verhindern möchte. Ich denke, daß die ENTER-Taste recht automatisert benutzt wird, deshalb ist es ein wichtiges Problem.

Also mein Wunsch:
- mit der ENTER-Taste darf das Formular nicht abgesendet werden
- drückt man auf ENTER, muß der Fragebogen, also die aufgerufene Seite, unverändert bestehen bleiben, es darf kein RESET erfolgen, damit der Ausfüllende nicht noch einmal anfangen muß (dann brauche ich ENTER nicht unterdrücken, da es das gleiche Ergebnis hervorbringt)


Mein HTML-Text:
</head>
<body>
<form action="http://www. ..." method="post" enctype="mulipart/form-data" id="contactForm">
<div>
<input value="Absenden" type="submit" />
</div>
</form>
</body>

Ich würde mich über eine Antwort sehr freuen.
Grüße, ewigfragend
 
Werbung:
Entferne den Submit-Button, dann klappt das auch. Der Weg über JavaScript ist nicht immer sauber.
 
Werbung:
ich habe folgendes Problem. Wenn jemand beim Ausfüllen des Fragebogens aus Versehen die ENTER-Taste drückt, weil er ins nächste Feld möchte, dann...
... kann er den Browser nicht bedienen. Da es in allen Browsern schon immer so war, dass wenn das Formular einen submit Button hat oder nur ein Textfeld, das in dem Fall das Formular abgeschickt wird.

Das was du willst, ist das in deinem Fall das Formular anders reagiert, als sonst. Das würde Frust hervorrufen, zumindeset bei den Leuten, die Wissen wie ihr Browser funktioniert, warum willst du die nerven?
 
Hallo,
vielen Dank für Eure Antworten. Bei der Betrachtung Eurer Antworten stellt sich für mich die Frage, wen man am meisten nervt. Den der weiß, wie man die ENTER-Taste nutzt oder den der automatisiert aus Versehen die ENTER-Taste drückt, obwohl er auch mit einem Browser umgehen kann. Manchmal ist man eben sehr vertieft und arbeitet unterbewußt, was wie in allen Sparten unseres Handelns auch mal zu einem Fehler führen kann. Ebenso ist zu betrachten, daß es noch Menschen gibt, die nicht mit dem PC aufgewachsen sind und es sich mühsam erarbeitet haben.
Wen verägere ich mehr ? Ich denke, die nicht alles perfekt können. Die Perfekten stellen sich vielleicht ganz schnell auf die neue Situation ein, denn Sie müssen nur ein einziges Mal sich in Ihrer gewohnten Umgangsweise mit dem Browser zu gunsten der weniger Perfekten integrieren. Als Therapeutin kann ich auf Erfahrungen zurückgreifen, die aus meiner Sicht aufzeigen, daß die wenigsten Menschen perfekt sind. Aber Ihr habt recht, auch die perfekten Individuen wollen berücksichtigt werden.

Hallo vitus37,
vielen Dank für diesen Hinweis. Ich werde es ausprobieren und sehen, für welche Variante ich mich entscheide. Vielleicht gegeb ich auch nur Warnhinweise und lasse alles bestehen.
Herzliche Grüße
ewigfragend
 
Wenn es keinen Sinn ergibt, nicht alle Felder auszufüllen, könntest du auch einfach das Formular über die "normale" Validierung mit den bisherigen Eingaben und einem Hinweis neu laden, wenn es zu früh abgeschickt wurde. (Vielleicht kannst du als letztes Eingabeelement eine Checkbox hinzufügen, die vom Nutzer angeklickt werden muss. Da dieses Feld nicht markiert wäre, wenn vorzeitig Enter gedrückt wird, hättest du so eine gute Möglichkeit zur Prüfung. Mag aber sein, dass das inhaltlich nicht passt.)

Eine weitere Möglichkeit wäre eine Art "Sicherheitsabfrage" zwischen dem erstmaligen Übermitteln und dem endgültigen Abschicken. So von wegen: "Sie haben die und die Felder ausgefüllt, möchten Sie die Daten abschicken oder die Eingaben noch einmal verändern? - Ja/Nein - Danke für Ihre Mühe!" Was da inhaltlich sinnvoll ist, kann ich nicht beurteilen.

Ich halte es jedenfalls auch aus verschiedenen Gründen nicht für gut, die Funktionsweise des Browsers zu verändern. So verschleierst du beispielsweise, was die standardmäßig zu erwartende Funktion ist, die beim Druck von Enter ausgelöst wird. Das macht es unerfahrenen Benutzern unmöglich, es korrekt zu lernen, und du hast das Problem, vor dem du gerade stehst, ein stückweit selbst verursacht.

Ich glaube, auch bei Desktopsoftware bedeutet Enter generell "schließe Dialog mit Ergebnis 'OK'" und nicht "springe zum nächsten Eingabefeld".
 
Werbung:
Ebenso ist zu betrachten, daß es noch Menschen gibt, die nicht mit dem PC aufgewachsen sind und es sich mühsam erarbeitet haben.
Da frage ich mich, wer es sich, wo erarbeitet hat, mit Enter irgendwelche Felder zu wechseln. Ich benutze den PC schon ziemlich lange (>20 Jahre), aber für mich ist das keine natürliche Tastenkombination zum wechseln von Feldern (eher die Tabtaste).

Es kann sein, dass das vielleicht in Excel so ist, aber dann wundere ich mich, dass ein Anfänger Excel bedienen kann, aber den Browser nicht. D.h. du erwartest Besucher, die ein sehr spezielles Computervorwissen haben. In dem Fall ist der Wunsch natürlich berechtigt, dass deine Besucher das vorfinden woran sie gewöhnt sind.
 
Hallo Struppi,
ich möchte auf Deine diskriminierenden Antworten nicht weiter eingehen. Es erübrigt sich für mich. Schon die Wahl Deines Images sagt mir einiges zu Deinen Vorstellungen über Menschen.

Hallo an die anderen,
ich habe die Lösung Dank eines anderen netten Mannes gefunden. Es ist wirklich einfach.

<form action="..." method="post" enctype="multipart/form-data" onSubmit="return buttonPressed">

<input type="button" onClick="buttonPressed=true; this.form.submit()" value="Absenden" />

Ich denke, daß dies eine gute Variante ist, niemanden behindert oder diskriminiert und man auf andere Rücksicht nimmt.
Empathie ist wirklich eine der wichtigsten Voraussetzungen für eine gute Zusammenarbeit.

Herzliche Grüße
ewigfragend
 
Hallo Struppi,
ich möchte auf Deine diskriminierenden Antworten nicht weiter eingehen. Es erübrigt sich für mich. Schon die Wahl Deines Images sagt mir einiges zu Deinen Vorstellungen über Menschen.
Was ist denn an meiner Antwort diskriminierend? Und was sagt die Zeichnung über meine Vorstellung über Menschen?
Ich hab dir doch nur erklärt, worauf du achten musst und das sogar sehr ausführlich und freundlich???? Ich bin verwirrt????

P.S. übrigens hab ich genau das was auch mermshaus dir gesagt hat, nur genauer erzählt.
 
Werbung:
Keine Ahnung, struppi. Lass dich nicht verwirren. In die normale Verhaltensweise eines Browsers mit JS einzugreifen gehört sich nicht. Das hast du gesagt und das ist korrekt so.
 
Das lustige ist ja, dass der Code, so wie er da steht fehlerhaft ist, d.h. das Formular funktioniert weiterhin so wie es soll.

Aber da die Frau Therapeutin weder hier noch auf ein persönliche Nachricht antwortet, noch ein Wort zu meinem "menschenverachteten" Avatar.

Das lustige Bild habe ich gefunden, weil ich nach einem Bild von einem Hupmonster gesucht hatte. Das ist eine Figur aus der Sesamstrasse. Da die aber vermutlich alle verklagen, die Bilder hochladen, gibt es keine Bilder von echten Hupmonstern. Ursprünglich wollte ich das für meine private Webseite verwenden (Mein Haus, Mein Auto, Mein Hund). Naja und weil es zu meinem Spitznamen paßt, hab ich's dann hier halt als Avatar benutzt.

Keine Ahnung welche Rückschlüsse auf meine Vorstellungen über Menschen, Frau Therapeutin darauss schliest, aber Menschenkenntnis ist sicher nicht ihr Ding (Hoffentlich gerade ich nie an solche Therapeuten).

Was auch verwundert, dass sie von Diskriminierung spricht, was durch ihren Versuch ja erst passiert. Während ich ja deutlich gesagt habe, dass nichts dagegen spricht sowas einzubauen, wenn sie weiß was sie tut. Also das es keine "Diskriminierung" ist was sie vor hat (wobei ich dieses Wort in dem Zusammenhang ein wenig hochgegriffen empfinde).

Wobei aber mermshaus - wie so oft ;) - den sinnvollsten Vorschlag gemacht hat. Im Rahmen einer JS Validierung das Abschicken verhindern, wenn nicht alle Felder ausgefüllt sind. Das würde tatsächlich niemanden "diskriminieren" und wäre auch technisch eine gute Lösung.
 
Hallo,
das hat wohl Knigge festgelegt? Ich denke, wenn man Rücksicht auf bspw. ältere Menschen nimmt, ist das mehr als nur "Knigge"wert.
Schön ist, das jeder irgendwie mal alt wird. Ich hoffe Ihr könnt dann der Entwicklung mithalten. Wenn nicht, ist eben Knigge schuld.
Herzliche Grüße
ewigfragend
 
Werbung:
Es hat was damit zu tun, dass man nicht in die Freiheit eines Anwenders unnötigerweise eingreifen sollte. Und im Netz macht nicht irgendjemand die Regeln und dann haben sich alle daran zu halten. Vielmehr formen sich Regeln, es wird diskutiert, sie werden aufgestellt und sie werden akzeptiert - oder eben nicht.
 
ewigfragend schrieb:
das hat wohl Knigge festgelegt? Ich denke, wenn man Rücksicht auf bspw. ältere Menschen nimmt, ist das mehr als nur "Knigge"wert.
Schön ist, das jeder irgendwie mal alt wird. Ich hoffe Ihr könnt dann der Entwicklung mithalten. Wenn nicht, ist eben Knigge schuld.

Es wurde schon so halb gesagt, aber ich unterstreiche es noch mal, da dir der Punkt ja zu Recht wichtig zu sein scheint. Prinzipiell ist es genau umgekehrt: Indem du in die Funktionsweise des Browsers eingreifst und ein standardisiertes, erwartbares und verlässlich bei jedem Formular im Web reproduzierbares Verhalten veränderst, nimmst *du* keine Rücksicht auf *keinen* Nutzer. Der Fall mag hier zwar trivial sein und die Diskussion der Haarspalterei gleichen, dennoch verhält sich deine Webseite in dieser einen winzigen Funktion inkonsistent zu 99,9 % des Rest-Webs beziehungsweise zu Computersoftware insgesamt.

Du kommunizierst das Paradigma: "Das Drücken von <Enter> ist in (Web-)Formularen konsequenzlos." Dass das nicht der Wahrheit entspricht, werden deine Nutzer spätestens beim nächsten Formular bemerken, dass sie unvollständig abschicken, wenn sie versehentlich auf die <Enter>-Taste drücken. Ab dann werden sie sich -- im Sinne der Argumentation -- bei jedem Formular fragen, was denn genau passiert, wenn <Enter> gedrückt wird, und die Verwirrung ist komplett.

Konsistenz sollte nicht leichtfertig geopfert werden, nur weil du glaubst, dass deine Idee, wie Dinge zu funktionieren haben, besser ist als die Idee eines etablierten Standards.

Consistency is one of the most powerful usability principles: when things always behave the same, users don't have to worry about what will happen. Instead, they know what will happen based on earlier experience. Every time you release an apple over Sir Isaac Newton, it will drop on his head. That's good.

-- Jakob Nielsen (Top-10 New Mistakes of Web Design (Jakob Nielsen's Alertbox))

Ich bin davon überzeugt, dass du es gut mit den Nutzern meinst, und ich finde deine Idee nachvollziehbar. Aus Usability-Sicht halte ich sie jedoch für kontraproduktiv und falsch, weil du -- wie ich in einem vorherigen Post übrigens bereits geschrieben habe -- selbst in geringem Maße dazu beiträgst, dass Nutzer unsicher werden, was beim Druck einer bestimmten Taste geschehen wird.

Sehr schade finde ich inzwischen, dass du nicht nur den gerade nochmals ausformulierten Standpunkt nicht zu respektieren und die diversen unterbreiteten Alternativvorschläge nicht wahrzunehmen scheinst, sondern dass du außerdem deine Meinung als so absolut anzusehen scheinst, dass ein Abweichen davon unweigerlich einer "Diskriminierung" bestimmter Benutzergruppen gleichkommen muss. Ich kann dir im Sinne einer fruchtbaren Diskussionskultur -- vielleicht auch hinsichtlich zukünftiger Threads -- nur empfehlen, flexibler mit konstruktiver Kritik umzugehen. Niemand hier verlangt, dass du dich überzeugen lässt, aber zumindest von den guten Absichten derjenigen, die ihre Zeit investieren, um dir zu antworten, solltest du ausgehen.

Die Themen Usability und Barrierefreiheit werden hier im Forum außerdem in der Regel sehr ernst genommen.
 
Zuletzt bearbeitet:
Zurück
Oben