Boris Kötting: <RETURN>-Verhalten bei mehreren Submit-Buttons

Beitrag lesen

Hallo,
mir stellt sich folgendes Problem (ich arbeite mit Struts und in diesem konkreten Fall mit einer LookupDispatchAction):  Ich habe auf einer HTML-Seite ein Textfeld mit zugehörigem Submit-Button.
Ein anderer Submit-Button mit anderer Funktionalität findet sich ebenfalls auf der Seite, aber VOR diesem Eingabefeld.
Da ich "mausfaul" bin, gebe ich den Text ein und drücke dann "Return". Dann wird jedoch der erste Submit-Button der Seite aktiviert, was so nicht gewollt ist.
Ich hatte als erste Näherung (Hack) den Submit-Button, der zum Textfeld gehört, an den Anfang meiner jsp kopiert (hidden). Beim Opera-Browser sieht das aber -hmm- mäßig aus (bei firefox & ie ists ok).
Es gibt ja auch noch das AccessKey-Attribut, aber hier sind, wenn ich es richtig verstanden habe, keine Steuerzeichen erlaubt, und die Browser reagieren auf die Accesskeys scheinbar uneinheitlich. Auch eine Lösung mit "onBlur" hatte ich mir überlegt, aber wenn der Benutzer dann aus Versehen in das Feld klickt und dieses wieder verlässt, dann wundert er/sie sich über ein submit.
Gibt es für das geschilderte Problem eine elegante Lösung oder muss ich das Design der Seite verändern, also das Textfeld mitsamt Button ganz nach vorne stellen?
Gibt es beispielsweise das Setzen eines "Return-Fokus" für eine Form auf einen Submit-Button ?
Vielleicht habe ich auch einfach nur "schlecht gegooglet" und auch bei hier bei selfhtml schlechte Suchbegriffe eingegeben.

Vielleicht wird durch den Sourcecode noch deutlicher was ich meine:

==========
auszug aus einer jsp:
<head>
..
</head>

<body>
<html:form action="/adminHauptmenueanzeige.do" method="post">
<table>
<tr>
<td><html:submit property="method"><bean:message key="button.auswerten"/></html:submit></td>
<td><html:submit property="method"><bean:message key="button.eingabe"/></html:submit></td>
</tr>
</table>
<table>
<tr>
<td><bean:message key="label.verwaltung"/></td>
</tr>
<tr>
<td><bean:message key="label.userLoginname"/></td>
<td><html:text property="userLoginEingabefeld" size="12" maxlength="32"/></td>
</tr>
<tr>
<td><html:submit property="method"><bean:message key="button.userAnlegen"/></html:submit></td>
<td><html:submit property="method"><bean:message key="button.userAendern"/></html:submit></td>
</tr>
</table>
</html:form>
</body>

Wenn man nun in das Textfeld etwas eingibt und <return> drückt, dann wird das erste Submit (auswerten) ausgeführt, also so, als wäre der erste Buton gedrückt worden. Es soll aber das Submit nach dem Textfeld ausgeführt werden. Wie kann ich das erreichen?

Über eine gute Idee würde ich mich auf jeden Fall freuen (Mit Tabulatoren klappt es leider nicht).

MfG,
BK