2011-04-30 63 views
0

我在这里看到很多类似的问题,但无法找到解决此特定问题的问题。如何使用两个按钮来提交表单,其中一个按钮不能运行所有功能

我正在使用jQuery验证插件和表单插件。提交完成后,我想让一个提交按钮运行一个函数。但我想要另一个提交按钮跳过最后一个功能。有关如何做到这一点的任何建议?

下面的代码:

$("#applicant-form").validate({ 
    submitHandler: function(form) { 
      $(form).ajaxSubmit({     
       type: "POST", 

       //... 

       error: function() {alert("error!");}, 

       success: function() {alert("success!");}, 

       complete: function(e) { 

       //function not to run with second submit goes here   
    } 
    }); 

return false; 
    }, 
      errorPlacement: function(error,element) { 
         return true; 
       }, 
       //... 
}); 

我想第二个提交按钮停止完整功能启动前的权利。

回答

0

也许你可以利用arguments.callee.caller.toString()确定哪些功能是调用提交功能,如果它是一个特定的主叫然后运行功能

0

尝试是这样的:

$(“#申请人“)。validate({

submitHandler: function(form) { 
     var submit = this.submitButton; //find submit button that is pressed 
     $(form).ajaxSubmit({     
      complete: function(e) { 
      if(submit.value==??????){ 
        //function not to run with second submit goes here 
      }   
} 

});

您可以识别哪个提交按钮被按下,然后根据提交按钮的某些属性在完整函数中决定是否执行或跳过正文。