极其简单的验证功能无法在表单上运行

时间:2016-10-04 18:55:16

标签: javascript jquery ajax

我希望创建一些非常简单的jQuery验证来检查输入字段是否包含字符串。

为了简化我的问题,我创建了一个验证函数,它使表单失效并返回false。然后,在提交表单时,它会在进入某些AJAX代码之前运行验证检查。

尽管validate_form()函数返回false,但AJAX代码仍然执行。任何人都可以详细说明这个吗?

function validate_form() {
    return false;
}

$('form').submit(function() {

    // Run validation function
    validate_form();

    // If returns true, execute the following code...

})

4 个答案:

答案 0 :(得分:0)

您需要返回值:

return validate_form();

答案 1 :(得分:0)

添加参数" e"功能:

$('form').submit(function(e) {

然后在验证返回false时尝试此操作:

e.preventDefault(); // Cancel the submission
return false; // Exit the function

答案 2 :(得分:0)

你可以这样做:

$('form').submit(function() {

    // Run validation function
    if(!validate_form()){
        return false;
    }

    // If returns true, execute the following code...

})

答案 3 :(得分:0)

你正在寻找这样的东西吗?

问题似乎不完整

function validate_form(input_string){
    if(typeof input_string === 'string' || input_string instanceof String){
        return true;
    }
    else{
        return false;
    }
}

$('form').submit(function(){
    var input_string = $("#yourinputID").val();
    var has_string = validate_form(input_string);

    if(has_string === true){
        //DO AJAX REQUEST
    }
    else{
        //DO NOT DO AJAX REQUEST
    }
});