Ich habe zwei einreichen Schaltflächen in einem Formular. Wie kann ich feststellen, welche Schaltfläche serverseitig angeklickt wurde?
Antworten
Zu viele Anzeigen?Verwenden Sie die formaction
HTML-Attribut (5. Zeile):
<form action="/action_page.php" method="get">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<button type="submit">Submit</button><br>
<button type="submit" formaction="/action_page2.php">Submit to another page</button>
</form>
Der beste Weg, mit mehreren Submit-Buttons umzugehen, ist die Verwendung eines Switch-Case im Server-Skript
<form action="demo_form.php" method="get">
Choose your favorite subject:
<button name="subject" type="submit" value="html">HTML</button>
<button name="subject" type="submit" value="css">CSS</button>
<button name="subject" type="submit" value="javascript">JavaScript</button>
<button name="subject" type="submit" value="jquery">jQuery</button>
</form>
Servercode/Serverskript - wo Sie das Formular absenden:
Datei demo_form.php
<?php
switch($_REQUEST['subject']) {
case 'html': // Action for HTML here
break;
case 'css': // Action for CSS here
break;
case 'javascript': // Action for JavaScript here
break;
case 'jquery': // Action for jQuery here
break;
}
?>
Fuente: W3Schools.com
Vielleicht haben die hier vorgeschlagenen Lösungen im Jahr 2009 funktioniert, aber ich habe alle hochgestuften Antworten getestet und keine funktioniert in irgendeinem Browser.
Die einzige funktionierende Lösung, die ich gefunden habe, ist diese (aber sie ist etwas hässlich, denke ich):
<form method="post" name="form">
<input type="submit" value="dosomething" onclick="javascript: form.action='actionurl1';"/>
<input type="submit" value="dosomethingelse" onclick="javascript: form.action='actionurl2';"/>
</form>
Sie suchen nach einer Funktion für mehrere Übermittlungsschaltflächen in einem Formular Beispiel:
<input type="submit" name="" class="btn action_bg btn-sm loadGif" value="Add Address" title="" formaction="/addAddress">
<input type="submit" name="" class="btn action_bg btn-sm loadGif" value="update Address" title="" formaction="/updateAddress">