防止表单提交验证并正常提交

时间:2014-02-07 09:02:16

标签: jquery forms validation

我有一个表单,我想验证客户端。它是一个小形式,所以我试图自己做这个,而不使用任何插件。但如果表单有效,我希望它能够noramlly汇总。 E.g

$(documet).ready(function(){
    $(".myform").on('submit', function (event){
        event.preventDefault(); //prevent it from submitting
        validate = validateForm(); //function to validate fields
        if (validate){
            this.submit();//if everything is ok submit it normally
        }
    })
});

但表格不会提交。我相信它与event.preventDefault()有关。撤消preventDefault()之后是否调用了submit()方法?我应该将防止默认值放在

if (!validate){
    event.preventDefault();
}else{
    this.submit();
}

这样做的方法是什么?

2 个答案:

答案 0 :(得分:2)

只需返回true即可提交表单

if (!validate){
    event.preventDefault();
}else{
    return true;
}

或使用$(this).submit();

或者只是在条件不需要的情况下离开

if (!validate){
    event.preventDefault();
}

答案 1 :(得分:0)

我们可以使用type =“button”代替type =“submit”,如下所示

<input type="button" onclick="myFunction()" value="Submit form">

function myFunction()
{
validate = validateForm();
document.getElementById("myForm").submit();
}