2013-04-24 36 views
2

我的網站上的所有表單都通過AJAX提交。而且我找不到它在哪裏實施。獲取元素的所有jQuery/JavaScript事件訂閱

當我查看HTML時,我看到帶有提交按鈕的普通<form>,但窗體始終是異步發送的。

我知道有些.js文件包含了這樣的事情:

$("form").onsubmit(function(e) { 
    var form = $(this).serialize(); 
    $.post(...... 
    e.preventDefault(); 
    ..... 
}); 

但我不能找到這段代碼。我的JavaScript不會做這樣的事情。

我可以在哪裏獲得特定元素(或所有表單元素)的事件訂閱?

謝謝

UPD:

確定。似乎我找到了嫌疑人。當我刪除腳本引用jquery.mobile我的表單正常發送。 如何禁止通過AJAX發送一個特定的表單?

+0

誰寫的原代碼? – SomeShinyObject 2013-04-24 14:28:02

+0

儘管您可能正在尋找能夠進行AJAX調用的實際代碼,但您始終可以使用[Firebug](http://getfirebug.com/)中的NET選項卡查看您的請求。 – Bucket 2013-04-24 14:28:40

+0

我建議你閱讀http://gil.badall.net/2013/03/07/on-javascript-events/它指向你http://www.sprymedia.co.uk/article/Visual+Event+ 2 – Nelson 2013-04-24 14:30:25

回答

1

你可以下載chrome,選擇一個元素。然後在你的開發者工具的右邊(你也有css的地方)。有一個名爲「事件監聽器」的選項卡。您可以在此查看綁定到元素的所有事件 - 以及它們的位置(文件+行號)。請注意,您需要檢查父母,因爲事件會冒泡dom樹。

如果您是Firefox用戶,您可以使用螢火蟲查看事件。

您還可以使用下面的代碼查看事件。但是這不會告訴你哪個腳本和行。

$('selector').data('events'); 

像這樣在本頁面:

$('#show-editor-button input').data('events') 
+0

謝謝。我使用Chrome開發工具在jquery-mobile lib中找到了事件訂閱。我評論了事件訂閱線,現在一切正常。表單與回發同步發送。再次感謝你 – xwrs 2013-04-24 15:44:33