form表单验证如何在验证完之后ajax提交数据
function addUser() {
let data={}
$.each($("#addUser").serializeArray(),function () {
data[this.name]=this.value;
})
let userName=$("input[name='userName']").val();
let password=$("input[name='password']").val();
let password2=$("input[name='password2']").val();
let mobile=$("input[name='mobile']").val();
let remarks=$("input[name='remarks']").val();
let mobileReg=/^1[3|4|5|8][0-9]\d{4,8}$/i;
if(userName.length==0){
let formAlert=$("input[name='userName']").next(".form-alert");
formAlert.show();
formAlert.html("用户名不可以为空");
}
if(password.length==0){
let formAlert=$("input[name='password']").next(".form-alert");
formAlert.show();
formAlert.html("密码不可以为空");
}
if(password2.length==0){
let formAlert=$("input[name='password2']").next(".form-alert");
formAlert.show();
formAlert.html("请再次输入密码");
}else if(password2!==password){
let formAlert=$("input[name='password2']").next(".form-alert");
formAlert.show();
formAlert.html("两次密码输入不一致");
}
if(remarks.length==0){
let formAlert=$("input[name='remarks']").next(".form-alert");
formAlert.show();
formAlert.html("备注信息不可以为空");
}
if(mobile.length==0){
let formAlert=$("input[name='mobile']").next(".form-alert");
formAlert.show();
formAlert.html("手机号不可以为空");
}else if(!mobileReg.test(mobile)){
let formAlert=$("input[name='mobile']").next(".form-alert");
formAlert.show();
formAlert.html("手机号格式不正确");
}
$.ajax({
type : "POST",
url : "/api/user/add",
data :data,
success : function(result) {
$(".alert").show();
if(result.msg=='注册成功'){
$(".alert").addClass('alert-success').removeClass('alert-danger');
}
$(".alert").text(result.msg);
setTimeout(function () {
$(".alert").hide();
},3000)
console.log(result)
},
error:function (result) {
$(".alert").show();
$(".alert").text(result.msg);
setTimeout(function () {
$(".alert").hide();
},3000)
}
});
}
如上代码,是我写的表单验证,如何保证在验证都对了之后再跳转到ajax,现在是直接就会跳ajax
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
验证不通过的地方return一下
就是楼上说的,在验证不对的地方直接return
ajax()不可以放在一个if语句中中吗,直接写肯定是页面刷新就执行啊。