执行一些功能而不提交然后提交

时间:2011-05-13 20:25:46

标签: jquery

我有两个输入必须在提交时验证。 我正在尝试这个:

$("#phase1_form").submit(function(e){
    var result1 = $("#phase1_responsVibleByFirstSignOff").isValid();
    var result2 = $("#phase1_responsibleBySecondSignOff").isValid();
   if ((result1
        && result2
    ))  
    {   
        return true;                                                                                                                                      
    }   
}); 

但是“isValid”功能不是那么快并且提交了表单。 我虽然也许我可以使用“preventDefault”方法,但我不知道在“isValid”函数返回一些结果之后如何“取消”此方法的效果。

由于

1 个答案:

答案 0 :(得分:2)

这与isValid函数的速度无关,提交肯定会等待结果。问题是您只返回trueundefined,但您需要返回false才能停止提交表单:

$("#phase1_form").submit(function(e){
  var result1 = $("#phase1_responsVibleByFirstSignOff").isValid();
  var result2 = $("#phase1_responsibleBySecondSignOff").isValid();
  return result1 && result2;
});