2015-11-17 55 views
2

我有我的jQuery提交,以及當用戶點擊提交按鈕的形式:檢測哪些事件提交表單

如: -

jQuery的一些提交

事件

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

按鈕單擊提交

按鈕點擊

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

我需要執行一個功能(說FUNC1)時,表格由jQuery的方式提交,否則另一個函數(說FUNC2)表單提交時點擊按鈕。

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

如何在不使用全局變量的情況下區分這些提交?

+0

以及取決於標記,你可以張貼。 – Jai

回答

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

+0

嘿,謝謝你的回答。雖然它解決了我的問題,但是我想知道如果在代碼中使用多個jQuery提交(無按鈕涉及,此處'event.target.nodeName'總是給出FORM),我將如何區分。 – Abhi

1

嘗試:

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

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

可以使用event.target.nodeName屬性來確定從哪個其提交。代碼在這裏:

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