js代码:

$(function() {
$('#form').validate({
onkeyup : false,
rules : {
oldPassword:{
required:true,
remote : {
url : global.context + '/admin/password/duplicate',
data : {
oldPassword : function() {
return $('#oldPassword').val();
}
}
}
},
password : {
required : true,
minlength : 6
},
repeat : {
required : true,
minlength : 6,
equalTo:'#password'
}
},
messages : {
oldPassword:{
required:'请输入原密码',
remote : '请输入正确的原密码'
},
password : {
required : '请输入密码',
minlength : '长度需大于6'
},
repeat : {
required : '请确认密码',
equalTo : '两次输入密码不一致',
minlength : '长度需大于6'
}
},
submitHandler:function(form){
var password = $('#password').val();
var repeat = $('#repeat').val();
$.ajax({
url : global.context + '/admin/password',
type : 'put',
contentType : "application/json; charset=utf-8",
data : JSON.stringify({
password : password,
repeat : repeat
}),
success : function(data) {
console.log(data);
if(data.status=='success'){
alert("修改密码成功");
}
}
});
}
});
});

个人感觉比较好用,可以用validate框架验证元素。

JQuery的submitHandler

之前做表单验证,有设置submitHandler

submitHandler: function(){
$("form").submit();
}

这样表单验证通过后会自动提交。。。。

改为

submitHandler: function(form){
form.submit();
}

否则,button按钮提交表单之后,表单会提交两次,前端造成stack 溢出

到此这篇关于Jquery validate(submitHandler函数)验证通过发送Ajax的文章就介绍到这了,更多相关Jquery validate验证内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

发表回复