检测哪个事件提交表单

时间:2015-11-17 09:31:08

标签: javascript jquery forms

我有一个由jQuery提交的表单以及用户单击“提交”按钮时:

例如: -

jQuery submit

某些事件

jQuery("#live_form").submit();

按钮点击提交

点击按钮

jQuery("#button1").click(function(){
  jQuery("#live_form").submit();
});

当表单通过jQuery方式提交时,我需要执行一个函数(比如说func1 ),当表单在按钮点击时提交时,我需要另外一个函数(比如func2 )。

jQuery("#live_form").submit(function(){
  //some code
});

如何在不使用全局变量的情况下区分这些提交?

3 个答案:

答案 0 :(得分:3)

jQuery("#button1").click(function(event){
  console.log("Form submit from "+event.target.nodeName);
  jQuery("#live_form").submit();
});

jQuery("#live_form").submit(function(event){
 console.log("Form submit from "+event.target.nodeName);
});

第一个块返回BUTTON,第二个块返回FORM

答案 1 :(得分:1)

尝试:

       var fromWhere = {};
        jQuery("#button1").click(function(){
          fromWhere = $(this);
          jQuery("#live_form").submit();
        });

        jQuery("#live_form").submit(function(){
         fromWhere = $(this);
        });
        console.log(fromWhere);

答案 2 :(得分:1)

您可以使用event.target.nodeName属性来识别其提交的内容。代码在这里:

$("#yourform").submit(function(event){
if(event.target.nodeName=="BUTTON"){
 functionOne();
}else if(event.target.nodeName=="FORM"){
 functionTwo();
}
});