form表单验证如何在验证完之后ajax提交数据

发布于 2022-09-07 08:47:07 字数 2378 浏览 26 评论 0

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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

梦一生花开无言 2022-09-14 08:47:07

验证不通过的地方return一下

柳絮泡泡 2022-09-14 08:47:07

就是楼上说的,在验证不对的地方直接return

栖迟 2022-09-14 08:47:07

ajax()不可以放在一个if语句中中吗,直接写肯定是页面刷新就执行啊。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文