Archiv verlassen und diese Seite im Standarddesign anzeigen : Formular absenden
Bernd_das_Brot
23.03.2010, 21:08
Hallo zusammen!
Habe eine Frage zu diesem Formular:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 strict//EN"
"http://wwww.w3.org/TR/html4/strict.dtd">
[...]
<form name="formular" action="php.php" method="POST">
<button onclick="test();">button</button>
<button type="submit">submit</button>
</form>
[...]
Druecke ich auf den Button mit der Beschriftung 'submit', so wird eine .php-Datei namens 'php' aufgerufen. Die Frage ist jetzt, wird die .php-Datei auch aufgerufen, nachdem ich auf den Button mit der Beschriftung 'button' klicke (bzw. nachdem die Funktion 'test' aufgerufen wurde)? Firefox macht das naemlich so, ist das laut Standart richtig so?
Flying Sheep
23.03.2010, 21:34
Die Angabe des type-Attributs ist nicht erforderlich. type="submit" ist der Defaultwert. Wenn du den Button nur für die Funktion test(); verwenden willst, dann setz den Typ auf "button".
http://de.selfhtml.org/html/referenz/attribute.htm#button
Bernd_das_Brot
23.03.2010, 21:39
*Gegen den Kopf klatsch*
Danke ;)
drunken monkey
23.03.2010, 23:15
In onclick nachher noch return false; zu spezifizieren würde afaik auch gehen, so setzt man ja z.B. die clientseitige Input Validation um.
Bernd_das_Brot
25.03.2010, 22:12
In onclick nachher noch return false; zu spezifizieren würde afaik auch gehen, so setzt man ja z.B. die clientseitige Input Validation um.
Ich glaube ich weis ungefaehr was du meinst, aber erklaere das mal bitte etwas genauer :)
<button onclick="foo_function(); return false;">Doh!</button>
Durch return false wird das Event "Button wird/wurde gedrückt" abgebrochen, somit sendet der Browser das Formular nicht ab.
Bernd_das_Brot
25.03.2010, 22:37
Also wuerde die Funktion nicht ausgefuehrt werden, sollte ich return false; vor das foo_function(); setzen?
Also wuerde die Funktion nicht ausgefuehrt werden, sollte ich return false; vor das foo_function(); setzen?
Ja, aber das ist es grundsätzliches bei vielen Programmiersprachen. Wenn return kommt, wird das dahinter nicht mehr ausgeführt, da die "Funktion" einen Wert zurückgibt und sich damit auch automatisch beendet.
Bernd_das_Brot
26.03.2010, 18:20
Alles klar, danke.
Flying Sheep
03.04.2010, 16:48
Die Angabe des type-Attributs ist nicht erforderlich. type="submit" ist der Defaultwert. Wenn du den Button nur für die Funktion test(); verwenden willst, dann setz den Typ auf "button".
http://de.selfhtml.org/html/referenz/attribute.htm#button
Ich muss mich korrigieren. Der IE8 scheint das mit dem Default-Wert noch nicht verstanden zu haben. Ohne explizite Angabe von type="submit" macht er einfach mal gar nichts. Tolles Programm :A
Bernd_das_Brot
06.04.2010, 13:19
Irgendwer muss ja immer aus der Reihe tanzen ....
Danke dir.
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.