【发布时间】:2012-01-11 23:21:21
【问题描述】:
我有一个简单的用户帐户管理页面,允许管理员删除用户帐户。
我希望在管理员用户单击“删除”按钮要求确认时弹出并暂停一个 jQuery UI 对话框。
jQuery 代码:
function getDeleteConfirmation(){
$( "#dialog:ui-dialog" ).dialog( "destroy" );
$( "#dialog-confirm-delete" ).dialog({
modal: true,
buttons: {
"Delete": function() {
return true;
$( this ).dialog( "close" );
},
Cancel: function() {
return false;
$( this ).dialog( "close" );
}
}
});}
PHP 代码:
print "<form action='admin_index.php' method=post>";
print "<input value=".$user_list[$i]."><input type=submit onclick='return getDeleteConfirmation()' value=delete>";
print "</form>";
问题是 jQuery 对话框窗口确实弹出了,但它并没有停止并等待用户做出反应,而是很快就消失了。页面被重定向,用户帐户被删除。
然后我尝试如下更改代码;
function getDeleteConfirmation(){
$( "#dialog:ui-dialog" ).dialog( "destroy" );
$( "#dialog-confirm-delete" ).dialog({
modal: true,
buttons: {
"Delete": function() {
window.location = 'admin_index.php';
$( this ).dialog( "close" );
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
}
去掉 HTML 中的表单标签,只留下输入标签
print "<input value=".$user_list[$i]."><input type=submit onclick='return getDeleteConfirmation()' value=delete>";
jQuery UI 对话窗口现在可以停止,但是无论我单击“删除”还是“取消”,相应的用户帐户都没有被删除。这似乎是由 php 变量未通过引起的。
我只是想知道如何使整个事情正常工作。
希望我已经把我的问题说清楚了,感谢任何帮助!
【问题讨论】:
标签: jquery forms jquery-ui jquery-ui-dialog form-submit