MudGuard: Input Type="button"

Beitrag lesen

Hi,

<form name="sortForm" action="<?php $PHP_SELF ?>" method="POST">
<input type="button" name="cat_select" value="1" onclick="sort_submit()">
<input type="button" name="cat_select" value="2" onclick="sort_submit()">
<input type="button" name="cat_select" value="3" onclick="sort_submit()">
<input type="button" name="cat_select" value="4" onclick="sort_submit()">
<input type="button" name="cat_select" value="5" onclick="sort_submit()">
<input type="button" name="cat_select" value="6" onclick="sort_submit()">
</form>

Ich möchte nun bei der Auswahl eines Buttons - beispielsweise 4 -
den value 4 an das Skript übermitteln

Dann tu das doch. Obiger Code enthält nichts, was für die Übergabe (nur) des geklickten Buttons sorgen würde.

Im HTML-Standard steht zu input type="button" nichts drin - weder ob diese "successful" sind noch daß diese nicht "successful" wären.
http://www.w3.org/TR/html401/interact/forms.html#successful-controls, es steht explizit nur was zu type="submit" und type="reset" drin.

Es wäre also zulässig, daß ein Browser alle name-value-Pärchen von <input type="button"> innerhalb der Form übermittelt (es also genauso behandelt wie ein input type="text").
In diesem Fall wäre keine Unterscheidung möglich.

Man könnte aber auch http://www.w3.org/TR/html401/interact/forms.html#h-17.2.1 "push buttons: Push buttons have no default behavior. " so interpretieren, daß eben nichts übermittelt wird. In diesem Fall würde kein name-value-Pärchen eines <input type="button"> übertragen - es wäre wieder keine Unterscheidung möglich.

Afaik überträgt kein Browser die name-value-Pärchen von <input type="button">

Es wird jedenfalls nicht ausgesagt, daß ein <input type="button">, der über irgendwelche event-Handler und ein Script zufällig zum Submit führt, anders behandelt werden sollte als die anderen <input type="button">.

Bei Submit-Buttons (<input type="submit"> sieht das anders aus - hier darf nur das name-value-Pärchen des tatsächlich benutzten Buttons übertragen werden.

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.