2010-11-27 60 views
3

爲什麼這個工作:jquery submit()不處理句柄?

$("form[data-remote].edit_item").submit(); 

但是,這不?

$("form[data-remote].edit_item").submit(function() { 
      alert('goo') 
    }); 
+0

您的頁面可能在submit()處理程序執行之前卸載嗎? – 2010-11-27 21:53:45

+0

沒有卸貨正在進行,這是所有的AJAX保存 – AnApprentice 2010-11-27 21:54:01

回答

4

有了這個,你調用submit事件:

$("form[data-remote].edit_item").submit(); 

有了這個,你是處理程序連接到submit事件:

$("form[data-remote].edit_item").submit(function() { 
    alert('goo'); 
}); 

隨着第二個你說的是「submit事件發生」 ......你不是說‘嘿,你,提交’,對於你仍然需要調用.submit(),或者是它的一個快捷方式:.trigger("submit") ......這樣的:

$("form[data-remote].edit_item").submit(function() { 
    alert('goo'); 
}).submit(); 

。 ..但在那個時候,爲什麼不單獨提醒呢?像這樣:

$("form[data-remote].edit_item").submit(); 
alert('goo'); 
0

顯示全部顯示您的alert()

$("form[data-remote].edit_item").submit(function(e) { 
    e.preventDefault(); 
    alert('goo'); 
}); 
1

您在提示調用後缺少分號。

0

第一個提交表單,第二個表單提交時設置一個函數回調來執行。