Bekijk Volledige Versie : Probleem met button tag om een form te submitten.....
Niels Basjes
19/07/04, 22:15
Hallo,
Ik heb een form waarin ik een button tag gebruik om een form te
submitten. Dat is handig want dan kun je de labels van die buttons
mooier maken.
Ik heb het getest onder Mozilla en Opera en daar werkt het prima.
Alleen onder Internet Explorer werkt het van geen kanten.
http://test.basjes.nl/form-test.php
Deze HTML is volgens validator.w3.org geldig maar dat zegt natuurlijk
niets over het gedrag van deze code.
Waar zit hier de fout ? Is dit een probleem met IE of ben ik over de
schreef gegaan wat betreft mijn verwachtingen van deze code ?
De ingekorte versie van het script:
<?php
echo "_POST[\"ButtonName\"]=". $_POST["ButtonName"]."<br />";
?>
<form enctype="multipart/form-data" action="form-test.php"
method=post>
<input type="text" name="SomeTextField" value="Testing 123"><br />
<button type="submit" name="ButtonName" value="DO_ACTION_1" >Button
1</button>
<button type="submit" name="ButtonName" value="DO_ACTION_2" >Button
2</button>
<button type="submit" name="ButtonName" value="DO_ACTION_3" >Button
3</button>
</form>
--
Niels.
Drs. ir. Niels Basjes - http://niels.basjes.nl/ - VCV 20000302
mailto:`echo 'Niels Basjes'|awk '{print$1"@"$2".nl"}'`
Hacker: One who enjoys the intellectual challenge of
creatively overcoming or circumventing limitations.
Branko Collin
19/07/04, 22:35
Niels Basjes <NielsBasjes@example.com>, you wrote on Mon, 19 Jul 2004
22:07:06 +0200:
>Ik heb een form waarin ik een button tag gebruik om een form te
>submitten. Dat is handig want dan kun je de labels van die buttons
>mooier maken.
>
>Ik heb het getest onder Mozilla en Opera en daar werkt het prima.
>Alleen onder Internet Explorer werkt het van geen kanten.
>
>http://test.basjes.nl/form-test.php
>
>Deze HTML is volgens validator.w3.org geldig maar dat zegt natuurlijk
>niets over het gedrag van deze code.
>
>Waar zit hier de fout ? Is dit een probleem met IE of ben ik over de
>schreef gegaan wat betreft mijn verwachtingen van deze code ?
Ik vroeg net zoiets in NIWO in de draad "Explorer 6 en meerdere
submit-knoppen in een formulier".
Voor zover ik met Google iets heb kunnen vinden, lijkt het er
inderdaad op dat Internet Explorer 6 voor MS Windows een probleem
heeft met het button-element.
--
branko collin
- dr: "have you been exposed to any user interfaces designed by engineers?"
- woman: "yes"
- dr: "you have interface poisoning. you'll be dead within a week" (scott adams, dilbert)
Warden Dave
19/07/04, 22:45
"Branko Collin" <collin@xs4all.nl> wrote:
> Niels Basjes <NielsBasjes@example.com>, you wrote on Mon, 19 Jul 2004
> >Deze HTML is volgens validator.w3.org geldig maar dat zegt natuurlijk
> >niets over het gedrag van deze code.
> >
> >Waar zit hier de fout ? Is dit een probleem met IE of ben ik over de
> >schreef gegaan wat betreft mijn verwachtingen van deze code ?
>
> Ik vroeg net zoiets in NIWO in de draad "Explorer 6 en meerdere
> submit-knoppen in een formulier".
>
> Voor zover ik met Google iets heb kunnen vinden, lijkt het er
> inderdaad op dat Internet Explorer 6 voor MS Windows een probleem
> heeft met het button-element.
Zo _zou_ je dat kunnen zien, al steekt MS het te verwachten gedrag van IE
niet echt onder stoelen of banken: "If the Submit button has a name property,
the button contributes a name/value pair to the submitted data.". Dat is
overigens ook zo voor voorgangers van MSIE6... (Google leert je blijkbaar
niet alles...)
WD
Niels Basjes
19/07/04, 23:05
On Mon, 19 Jul 2004 22:25:56 +0200, the lifeform known as Branko
Collin <collin@xs4all.nl> wrote:
>>Ik heb een form waarin ik een button tag gebruik om een form te
>>submitten. Dat is handig want dan kun je de labels van die buttons
>>mooier maken.
>>
>>Ik heb het getest onder Mozilla en Opera en daar werkt het prima.
>>Alleen onder Internet Explorer werkt het van geen kanten.
>>
>>http://test.basjes.nl/form-test.php
>Ik vroeg net zoiets in NIWO in de draad "Explorer 6 en meerdere
>submit-knoppen in een formulier".
Ik heb het even opgezocht.
>Voor zover ik met Google iets heb kunnen vinden, lijkt het er
>inderdaad op dat Internet Explorer 6 voor MS Windows een probleem
>heeft met het button-element.
Dat is duidelijk. Maar is het een probleem dat Mozilla en consorten de
standaard niet implementeren of is het IE die de standaard niet
implementeerd wat dit gedrag betreft ?
--
Niels.
Drs. ir. Niels Basjes - http://niels.basjes.nl/ - VCV 20000302
mailto:`echo 'Niels Basjes'|awk '{print$1"@"$2".nl"}'`
Hacker: One who enjoys the intellectual challenge of
creatively overcoming or circumventing limitations.
Warden Dave
19/07/04, 23:15
"Niels Basjes" <NielsBasjes@example.com> wrote:
[MSIE doet BUTTONS royaal op de post]
> Dat is duidelijk. Maar is het een probleem dat Mozilla en consorten de
> standaard niet implementeren of is het IE die de standaard niet
> implementeerd wat dit gedrag betreft ?
Je kunt met deze client-side kwestie en een vraag die gelijkvalt met 1
in een client-side nieuwsgroep je je m.i. beter daar vervoegen..
[Als je er veel aan gelegen is je vraag alvast beantwoord te krijgen stel ik
voor dat je de vrij toegankelijke specificaties/aanbevelingen (...) zelf naslaat.
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/button.asp
Bijv. (HTML4.01): http://www.w3.org/TR/html401/interact/forms.html#h-17.5]
WD
Niels Basjes
19/07/04, 23:55
On Mon, 19 Jul 2004 23:04:47 +0200, the lifeform known as "Warden
Dave" <warden_dave@web.de> wrote:
>"Niels Basjes" <NielsBasjes@example.com> wrote:
>
>[MSIE doet BUTTONS royaal op de post]
>> Dat is duidelijk. Maar is het een probleem dat Mozilla en consorten de
>> standaard niet implementeren of is het IE die de standaard niet
>> implementeerd wat dit gedrag betreft ?
>
>Je kunt met deze client-side kwestie en een vraag die gelijkvalt met 1
>in een client-side nieuwsgroep je je m.i. beter daar vervoegen..
Mee Eens. Ik twijfelde of het een client side of een server side
scripting probleem was.
>[Als je er veel aan gelegen is je vraag alvast beantwoord te krijgen stel ik
> voor dat je de vrij toegankelijke specificaties/aanbevelingen (...) zelf naslaat.
> http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/button.asp
> Bijv. (HTML4.01): http://www.w3.org/TR/html401/interact/forms.html#h-17.5]
Thanks.
--
Niels.
Drs. ir. Niels Basjes - http://niels.basjes.nl/ - VCV 20000302
mailto:`echo 'Niels Basjes'|awk '{print$1"@"$2".nl"}'`
Hacker: One who enjoys the intellectual challenge of
creatively overcoming or circumventing limitations.
Branko Collin
20/07/04, 10:15
"Warden Dave" <warden_dave@web.de>, you wrote on Mon, 19 Jul 2004
22:31:55 +0200:
>"Branko Collin" <collin@xs4all.nl> wrote:
>> Niels Basjes <NielsBasjes@example.com>, you wrote on Mon, 19 Jul 2004
>
>> >Deze HTML is volgens validator.w3.org geldig maar dat zegt natuurlijk
>> >niets over het gedrag van deze code.
>> >
>> >Waar zit hier de fout ? Is dit een probleem met IE of ben ik over de
>> >schreef gegaan wat betreft mijn verwachtingen van deze code ?
>>
>> Ik vroeg net zoiets in NIWO in de draad "Explorer 6 en meerdere
>> submit-knoppen in een formulier".
>>
>> Voor zover ik met Google iets heb kunnen vinden, lijkt het er
>> inderdaad op dat Internet Explorer 6 voor MS Windows een probleem
>> heeft met het button-element.
>
>Zo _zou_ je dat kunnen zien, al steekt MS het te verwachten gedrag van IE
>niet echt onder stoelen of banken: "If the Submit button has a name property,
>the button contributes a name/value pair to the submitted data.". Dat is
>overigens ook zo voor voorgangers van MSIE6... (Google leert je blijkbaar
>niet alles...)
Ik zou ook kunnen stellen dat _ik_ een probleem heb, omdat ik neig te
veronderstellen dat Microsoft in zijn webbrowsers tracht de
HTML-aanbevelingen te volgen van het W3C (waar de Amerikaanse
softwarebakker zelf lid van is). Die verwachting is een naieve en de
stelling een cynische. Daarom geloof ik liever dat Microsoft het mis
heeft.
Uit die aanbevelingen, van de HTML 4.01-versie:
"Buttons created with the BUTTON element function just like buttons
created with the INPUT element"
en
"A successful control is "valid" for submission. Every successful
control has its control name paired with its current value as part of
the submitted form data set."
en
"If a form contains more than one submit button, only the activated
submit button is successful."
Met andere woorden, van alle succesvolle formulierbesturingselementen
worden de naam-waarde-paren doorgegeven, behalve van submitknoppen,
waar alleen het naam-waarde-paar van de geactiveerde knop wordt
doorgegeven.
--
branko collin
- dr: "have you been exposed to any user interfaces designed by engineers?"
- woman: "yes"
- dr: "you have interface poisoning. you'll be dead within a week" (scott adams, dilbert)
Warden Dave
20/07/04, 10:45
"Branko Collin" <collin@xs4all.nl> wrote:
> "Warden Dave" <warden_dave@web.de>:
>>"Branko Collin" <collin@xs4all.nl> wrote:
>>> Niels Basjes <NielsBasjes@example.com>, you wrote on Mon, 19 Jul 2004
> >
> >> >Deze HTML is volgens validator.w3.org geldig maar dat zegt natuurlijk
> >> >niets over het gedrag van deze code.
> >> >
> >> >Waar zit hier de fout ? Is dit een probleem met IE of ben ik over de
> >> >schreef gegaan wat betreft mijn verwachtingen van deze code ?
> >>
> >> Ik vroeg net zoiets in NIWO in de draad "Explorer 6 en meerdere
> >> submit-knoppen in een formulier".
> >>
> >> Voor zover ik met Google iets heb kunnen vinden, lijkt het er
> >> inderdaad op dat Internet Explorer 6 voor MS Windows een probleem
> >> heeft met het button-element.
> >
> >Zo _zou_ je dat kunnen zien, al steekt MS het te verwachten gedrag van IE
> >niet echt onder stoelen of banken: "If the Submit button has a name property,
> >the button contributes a name/value pair to the submitted data.". Dat is
> >overigens ook zo voor voorgangers van MSIE6... (Google leert je blijkbaar
> >niet alles...)
> Ik zou ook kunnen stellen dat _ik_ een probleem heb, omdat ik neig te
> veronderstellen dat Microsoft in zijn webbrowsers tracht de
> HTML-aanbevelingen te volgen van het W3C (waar de Amerikaanse
> softwarebakker zelf lid van is). Die verwachting is een naieve en de
> stelling een cynische. Daarom geloof ik liever dat Microsoft het mis
> heeft.
Dat mag natuurlijk. In ieder geval is wat MS doet hoogst onpractisch.
Omdat bijv. de HTML4 spec. stelt dat de functie van een BUTTON
element niet anders is dan van een INPUT van gelijke 'type' zou je
verwachten dat MS deze regel volgen zou:
> Uit die aanbevelingen, van de HTML 4.01-versie:
>
> "Buttons created with the BUTTON element function just like buttons
> created with the INPUT element"
>
> en
>
> "A successful control is "valid" for submission. Every successful
> control has its control name paired with its current value as part of
> the submitted form data set."
>
> en
>
> "If a form contains more than one submit button, only the activated
> submit button is successful."
>
> Met andere woorden, van alle succesvolle formulierbesturingselementen
> worden de naam-waarde-paren doorgegeven, behalve van submitknoppen,
> waar alleen het naam-waarde-paar van de geactiveerde knop wordt
> doorgegeven.
Ja, ik zei al dat het in ieder geval pure gekheid was van de kant van MS.
Er is n.l. helemaal niets voor te zeggen al die BUTTONs op de bus te
doen...
WD