2012-03-28 38 views
0

jQuery中有一種將所有表單設置爲某個發佈請求,然後重寫每個表單的成功回調的方法嗎?

像這樣:

$("form").submit(function(){ 
    $.post(url,function(){ callback actions}); 
}); 

$("form#foo").submit(function(){ 
    do the same 
    $.post(url, function(){ different actions}); 
}); 

回答

0

添加回調以陣列,使用形式,如鑰匙的ID。在你的成功回調,你可以這樣做:

$("form").submit(function(){ 
    var f = this; 
    $.post(url, 
      function() { 
       callbacks[$(f).attr('id')]() ; 
      } 
    ); 
}); 
+0

我假定你的意思是: $( 「形式」)提交(函數(即回調[]){}); 但我如何將它們傳遞給事件?我想使用.click與提交觸發器結合,但它感覺不對... – 2012-04-03 15:12:46

+0

$(「form#foo」)。submit(function(){ var that = this; $ .post(url,function, (){ callbacks [$(that).attr('id')](); }); }); – Willian 2012-04-03 15:14:10

+0

我更新了答案!是的,你可以創建一個全局回調數組 – Willian 2012-04-03 15:17:36