Ich habe einen PHP-Code geschrieben, in dem, wenn ich auf Senden klicke, ein Eintrag in der Combobox gelöscht wird. Jetzt möchte ich Bestätigung und ich schrieb unter Code, der nicht funktioniert. PHP-Code:JQuery-Bestätigungsdialog bei Submit-Klick in PHP
$DeleteButton=$_REQUEST['DeleteButton'];
if ($DeleteButton=="delete") :
if ($DeleteComboBox=="PickOne") :
$DeleteButton = "" ;
else :
$query = "DELETE FROM `items` WHERE `id` = $DeleteComboBox LIMIT 1";
$result = mysql_query($query)
or die("Database deletion failed");
$DeleteButton = "" ;
endif ;
endif ;
echo "<BR><BR><FORM NAME=\"EditFORM\" ACTION=\"./index.php\" METHOD=POST>\n";
$sql_select = "SELECT * FROM items WHERE id>0 order by name" ;
$sql_result = mysql_query($sql_select)
or die ("Couldn't execute SQL query on db table.") ;
echo "<SELECT ID=\"DeleteComboBox\" NAME=\"DeleteComboBox\">";
echo "<OPTION VALUE=\"PickOne\" SELECTED>select item</OPTION>";
while ($row = mysql_fetch_array($sql_result)) {
echo "<OPTION VALUE=\"$row[0]\">" . $row[2] . " " . $row[1] . "</OPTION>";
}
echo "</SELECT>";
echo "<BR><BR><INPUT TYPE=SUBMIT NAME=\"DeleteButton\" VALUE=\"delete\" ID=\"DeleteButton\">\n" ;
echo "</FORM>\n";
JQuery Teil:
<script type="text/javascript">
$(document).ready(function() {
$("#dialog").dialog({
autoOpen: false,
modal: true
});
});
$("#DeleteButton").click(function(e) {
e.preventDefault();
currentForm = $(this).closest('form');
$("#dialog").dialog({
dialogClass: "no-close",
buttons : {
"yes" : function() {
currentForm.submit();
},
"no" : function() {
$(this).dialog("close");
}
}
});
$("#dialog").dialog("open");
});
</script>
Das Problem ist dieser Code funktioniert nicht. Wenn ich jQuery Teil nicht hinzufüge, funktioniert der Code tadellos, aber nachdem ich jQuery Teil hinzufüge, als ich Absendeknopf anschalte, erscheint der jquery Dialog, aber nach dem Klicken yes Knopf wird das Formular übermittelt, ohne vorgewähltes Einzelteil zu löschen.
könnten Sie bitte erarbeiten mehr . Ich möchte nur das Element auf Knopfdruck löschen. Wie kann ich dieses versteckte Feld verwenden, um dies zu erreichen? – Amir
Danke. Diese Antwort hat mich gerettet^_ ^ – Amir