我将在验证表格后提交表格如下,首先我使用ajax帖子并检查是否存在重复值,如果存在,ajax将返回html代码,否则返回'false'。如果ajax返回是'html代码',则应弹出对话框。如果ajax return为false, form_validate()应返回true。这意味着没有重复,表单将提交插入数据。如果用户在对话框中单击“确定”,则 form_validate()应返回true,这表示存在重复项,表单将提交更新数据。如果用户点击取消 form_validate()应该返回false,这意味着表单将不会提交。我正在这个时间工作,但无法弄明白。 Plz帮助。
function form_validate(){
$.post('index.php',{ .....
},function(result){
if(result!='false'){
$('<div></div>')
.html(result+'<br/>Click OK to confirm. Click Cancel to stop this action.')
.dialog({
buttons : {
"OK": function() {
$(this).dialog("close");
return true;
}, "Cancel": function() {
$(this).dialog("close");
return false;
}
}
}
});
}
<form>
标记
<form action="index.php" method="post" name="adminForm" onsubmit="return validate_form();" >
答案 0 :(得分:2)
function form_validation(){
$.post
.....
.....
,function(result){
if(result!='false'){
$('<div></div>')
.html(result+'<br/>Click OK to confirm. Click Cancel to stop this action.')
.dialog({
buttons : {
"OK": function() {
$(this).dialog("close");
$('#adminForm3').submit();
}, "Cancel": function() {
$(this).dialog("close");
}
}});
}
else{
$('#adminForm3').submit();
}
return ;
});
return false;
}
将表单ID添加为adminForm3。这样可以正常工作。
答案 1 :(得分:0)
您无法从异步请求返回数据 - 您需要使用回调来处理这些数据。我不熟悉jQuery UI,因此我不确定是否可以在对话框中附加“onClose”处理程序,您可以将true
或false
值传递给对象。