正在开发网络应用程序,当我尝试验证时,并提交这样的表单工作正常。
var res = confirm ("Are u want to continue?")
if (res)
{
var stra_validator = $("#form").validate(form_rule);
stra_validator.reset();
return stra_validator.form();
}else{
$('#someID').focus();
return false;
}
但是当我尝试使用jQuery对话框时,我就像这样使用了
var btns = {};
btns['Yes'] = function(){
$(this).dialog("close");
var stra_validator = $("#form").validate(form_rule);
stra_validator.reset();
return stra_validator.form();// continue the process
};
btns['No'] = function(){
$(this).dialog("close");
$('#someID').focus();
return false;
};
$("<div></div>").dialog({
autoOpen: true,
title: 'Condition',
modal:true,
buttons:btns
});
它没有进行下一步我的意思是不提交。但如果我点击否,它就会聚焦。我在这里做错了什么?请帮帮我一个人?提前谢谢。
答案 0 :(得分:0)
我认为$(this).dialog()在按钮上下文中是错误的。
试试这个:
var btns = {};
btns['Yes'] = function() {
// Here you have to reference the real dialog
$('#dialog').dialog("close");
alert('come here');
var stra_validator = $("#form").validate(form_rule);
stra_validator.reset();
return stra_validator.form();
// continue the process
};
btns['No'] = function() {
$('#dialog').dialog("close");
$('#someID').focus();
return false;
};
// Never created a div on the fly but it's working well and I just added an ID
$('<div id="dialog"></div>').dialog({
autoOpen : true,
title : 'Condition',
modal : true,
buttons : btns
});