0

我今天花了几个小时来找到我的问题的解决方案。我有一个标签 onsubmit="return checks();"。检查()函数将进行输入验证。

function checking(){
    var filename = $("#filename").val();
    $.ajax({
        type: "POST",
        url: url,
        data: $(".myform").serialize(),
        success: function(data){
            if(data == "something"){
               return true;
            }
            else{
               return false;
            }
        }
    });
return false;     // this will trigger my onSubmit
}

但是这个不起作用,因为返回值是 true 或 false 在 $.ajax 函数中。那么如何在我的表单中触发 onsubmit 呢?

提前致谢!

4

1 回答 1

0

我建议不要使用提交按钮,而是使用这样的普通旧按钮:

<input id="submit" type="button" value="Submit" />

然后,更改您的处理程序,以便仅在验证通过时提交,而不是在验证失败时尝试停止提交:

function checking(){
    var filename = $("#filename").val();
    $.ajax({
        type: "POST",
        url: url,
        data: $(".myform").serialize(),
        success: function(data){
            if(data == "something"){
               $('#myform')[0].submit(); //submit your form here
            }
            else{
               return false;
            }
        }
    });
    return false;
}
于 2012-11-29T08:40:05.760 回答