2012-04-04 16 views
1

Ich habe ein Formular mit 2 Tasten, die je nachdem, welche ausgewählt ist, wird entweder gelöscht oder bearbeitet von der Datenbank. Das sind jeweils einzelne Seiten, die SQL-Anweisungen verwenden (questionit und questiondelete). Allerdings, wenn ich eine Taste drücken, passiert nichts ... Irgendwelche IdeenPHP Form mehrere Tasten

Hier mein Javascript ist

function SelectedButton(button) 
{ 
    if(button == 'edit') 
    { 
     document.testedit_questionform.action ="testedit_questionedit.php"; 
    }else if(button == 'delete'){ 
     document.testedit_questionform.action ="testedit_questiondelete.php"; 
    } 
    document.forms[].testedit_questionform.submit(); 
} 

Hier ist meine Form (aus einer Schleife Echo wird)

<form name="testedit_questionform" action="SelectedButton" method="POST"> 
    <span class="grid_11 prefix_1" id="" > 
Question:<input type="text" name="QuestionText" style="width:588px; margin-left:10px;" value="$row[0]"/> 
    <input type="button" value="Edit" name="Operation" onclick="submitForm('edit')" /> 
    <input type="button" value="Delete" name="Operation" onclick="submitForm('delete')" /> 
    <input type="hidden" name="QId" value="$row[3]" /><br /> 
</form> 

Antwort

2

Zunächst einmal sollten Sie Ihre Funktion submitForm

function submitForm(button) { 
    if(button == 'edit') { 
    document.testedit_questionform.action ="testedit_questionedit.php"; 
    } else if(button == 'delete') { 
    document.testedit_questionform.action ="testedit_questiondelete.php"; 
    } 

    document.testedit_questionform.submit(); 
} 

Und dann genannt werden, ruft Methode von Ihrem Formular.

EDIT:

Eine Alternative zum Aufruf Formen ist: document.forms['FORM_NAME'].submit()

+0

Das ist was ich brauchte, danke! – Ken

1

Blick auf wie Sie auf das Formular zugreifen, um submit() aufzurufen. Sehen Sie sich an, wie Sie auf das Formular zugreifen, um die Aktion zu ändern. Einer von ihnen ist eindeutig falsch.

1

Es wäre einfacher, zu einer PHP-Datei zu machen, und Tasten mit verschiedenen Namen wie folgt aus:

<form method="post" action="actions.php"> 
<input type="submit" name="action1" value="Action 1" /> 
<input type="submit" name="action2" value="Action 2" /> 
[...] 

Und die Datei actions.php:

if(isset($_POST["action1"])) { 
    // action 1 
} 
elseif(isset($_POST["action2"])) { 
    // action 2 
}