Horst: Enter IE8

Hallo Leute

Ich bin am verzweifeln. Beim drücken von Enter im IE8 wird der submit Button nicht mitgesendet. Und meine CGI fällt auf die Schnauze. Ich finde keinen Fehler im HTML Code.
Fiddler zeigt an das Variables und Beschreibung gesendet werden.

Seht Ihr einen Fehler ?

Gruss Horst

<html>
<head>
</head>
<body>
<form method="post" action="sbs_auftrag.exe">
<input type="hidden" value="4951555759262728292A2B2C2D2E2F8C4443434435363738393A97524E9A9B56549E54A0A17468756EA6615FA9AA5FAC72A799A8A7979EB4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C47F7CC794BCC0C2C4" name="VARIABLES">

<input type="text" name="BESCHREIBUNG" value="">
<input type="submit" value="Save" name="VORLAGE_SAVE_OK">
</form>
</body>
</html>

  1. Beim drücken von Enter wird auch kein submit Button geklickt, daher wäre das für mich nachvollziehbar.
    Wenn du nur einen Button hast brauchst du den nicht mitsenden, dann ist klar welcher gedrückt wurde. Wenn du mehrere hast, welcher sollte dann mitgesendet werden?

    1. Tach!

      Beim drücken von Enter wird auch kein submit Button geklickt, daher wäre das für mich nachvollziehbar.
      Wenn du nur einen Button hast brauchst du den nicht mitsenden, dann ist klar welcher gedrückt wurde. Wenn du mehrere hast, welcher sollte dann mitgesendet werden?

      Ergänzend: In der HTML4.01-Spezifikation, Abschnitt Form submission stand, dass nur von erfolgreichen Elementen die name-Value-Pärchen gesendet werden. Ist nun ein nicht geklickter Button „erfolgreich“? Die Spec schreibt zum Thema Button nur „If a form contains more than one submit button, only the activated submit button is successful.“ Das lässt Spielraum für Interpretation und sagt nichts über Forms mit nur einem Submit-Buttons aus. Die alten IEs haben nicht geklickte Buttons nicht als „erfolgreich“ angesehen. Andere Browserhersteller dachten sich, man müsse da einfach so tun, als sei der erste Submit-Button geklickt worden. Beim GUI-Programmieren kann man in der Regel einen Button als Default-Button festlegen, der dann beim Entern als geklickt angesehen wird, das ging bei HTML allerdings nicht.

      HTML5 definiert sich bei der Form Submission nun genauer: „A form element's default button is the first submit button in tree order whose form owner is that form element.
      If the user agent supports letting the user submit a form implicitly (for example, on some platforms hitting the "enter" key while a text field is focused implicitly submits the form), then doing so for a form whose default button has a defined activation behavior must cause the user agent to run synthetic click activation steps on that default button.“

      Mit anderen Worten, der Submit-Button ist nur bei Browsern zu erwarten, die sich an die HTML5-Spec halten, oder die dieses Verhalten schon eher an den Tag legten, und so dafür sorgten, dass das in die HTML5-Spec aufgenommen wurde, während der IE seinen Marktführerschlaf schlief.

      Problemlösungsmöglichkeiten: Den Button nicht abfragen, sondern eher, ob die Request-Methode POST war oder ob POST-Daten vorhanden sind. Oder ein Hidden-Element mit gleichnamigem Name-Value-Pärchen einbauen, das dann den Button simuliert.

      dedlfix.

    2. Habs herrausgefunden. Der default Button ist IMMER der Erste Button, AUSSER wen nur ein Eingabefeld vorhanden ist (echt super logik, zum ko...). Musste ein unsichtbares Eingabefeld definieren.

      Gruss
      Horst

      Beim drücken von Enter wird auch kein submit Button geklickt, daher wäre das für mich nachvollziehbar.
      Wenn du nur einen Button hast brauchst du den nicht mitsenden, dann ist klar welcher gedrückt wurde. Wenn du mehrere hast, welcher sollte dann mitgesendet werden?

      Habe mehr als einen Button