验证表单阻止表单提交

时间:2015-02-06 11:21:25

标签: javascript jquery ajax forms jquery-validate

我正在使用asp.net MVC 5并尝试在提交时验证表单。一切正常,直到我添加下面的代码行来使用ajax调用验证表单。

    $('#signupform').validate({
    submitHandler: function (form) {            
        $.ajax({
            type: 'POST',
            data: JSON.stringify({ type: "WhatsNew", code: $('#PrimaryCode').val() }),
            url: '@Url.Action("CheckCode", "Home")',
            dataType: 'json',
            contentType: 'application/json'
        })
        .done(function (response) {
            if (response == 'success') {

                alert('success');
            }
            else {
                alert('failed');
            }
        });
        return false; // required to block normal submit since you used ajax
    }
});

以上代码只是阻止提交表单。

2 个答案:

答案 0 :(得分:0)

您阻止return false;提交以便对表单进行ajax验证,但在成功验证后未提交表单。

.done();

中添加表单提交触发器
if (response == 'success') {    
    //  since validation is success, submit form here (e.g. YourForm.submit())
}

答案 1 :(得分:0)

可能走过: