Javascript fadeOut()方法赢得';无法处理event.preventdefault()
提交并验证表单时,我希望对话框淡出并关闭,我不希望页面自动刷新。如果使用preventdefault,页面不会刷新,但对话框也不会关闭。我还需要做什么Javascript fadeOut()方法赢得';无法处理event.preventdefault(),javascript,jquery,validation,Javascript,Jquery,Validation,提交并验证表单时,我希望对话框淡出并关闭,我不希望页面自动刷新。如果使用preventdefault,页面不会刷新,但对话框也不会关闭。我还需要做什么 $("#form").validate({ rules: { number : { required: true } }, messages: { number : {
$("#form").validate({
rules: {
number : {
required: true
}
},
messages: {
number : {
required: "enter a phone number"
}
},
submitHandler: function(form,event) {
event.preventDefault();
//this prevents a double click on the form button
$("form :input:submit").click(function() {
this.disabled = 'disabled';
});
//Here I want the dialog to slowly fade, then close, *then* reload the page.
//but it won't fade or close when I'm using preventDefault().
$('#dialog').fadeOut('slow', function(){
$( this ).dialog( "close" );
location.reload();
});
} //closes submit handler
});//close validate
您可以放置
event.preventDefault()代码>在submithandler
函数的末尾 问题是submitHandler
只接收1个参数form
,因此尝试调用event.preventDefault()代码>将导致异常并停止以下脚本的执行
回调传递了一个参数:
形式
类型:元素当前正在验证的表单,作为
多梅莱恩
从
尝试返回false代码>位于函数末尾
submitHandler: function(form) {
$("form :input:submit").click(function() {
this.disabled = 'disabled';
});
$('#dialog').fadeOut('slow', function(){
$( this ).dialog( "close" );
location.reload();
});
return false;
}