2013-06-13 16 views
0

我在按鈕單擊(LIST按鈕)並將其放入DIV中的AjaxCall上獲取html內容。基於AJAX的內容中的jQuery事件問題

$("#list").live("click",function(){ 
     var id=3; 
     $.ajax({ 
       url: location.protocol+'//'+window.location.hostname+"/getList/", 
       type: "POST", 
       data:{id:id}, 
       cache: false, 
       success : function(data){ 
        $("#list_template").empty(); 
        $("#list_template").html(data); 
       } 
      });   
}); 

的迴應HTML包含另一添加按鈕在裏面,所以如果我點擊兩次/三次到列表按鈕,然後添加按鈕的問題是還點擊了兩次/三次在一個單一的點擊。在插入數據之前清除DIV時,我不知道是什麼問題,並且在View-source ADD按鈕中也是單一的。

$("#add").live("click",function(){ 
    alert("Added"); 
}); 

所以我想要的是,如果我點擊列表按鈕儘可能多的時間,我想,但增加了按鈕應該再在每一次點擊觸發。通過一些研究,我認爲jQuery bind/unbind函數可能在這裏使用,但我不知道如何在這裏使用它。

+0

你能告訴我們html嗎? – HarryFink

+0

我覺得HTML在這裏並不重要,比方說,如果我只在html中獲得'',它表現相同。 – Bheem

+0

你可以向我們展示添加的html或添加按鈕單擊事件。 – Mourice

回答

1

您可以使用以下方式解除綁定和綁定。

$("#list").live("click",function(){ 
     var id=3; 
     $.ajax({ 
      url: location.protocol+'//'+window.location.hostname+"/getList/", 
      type: "POST", 
      data:{id:id}, 
      cache: false, 
      success : function(data){ 
       $("#list_template").empty(); 
       $("#list_template").html(data); 
       $("#add").unbind('click').bind("click",function(){ 
        alert("Added"); 
       }); 
      } 
     });   
}); 

或者你也可以使用生活和死亡事件。

$("#list").live("click",function(){ 
     var id=3; 
     $.ajax({ 
      url: location.protocol+'//'+window.location.hostname+"/getList/", 
      type: "POST", 
      data:{id:id}, 
      cache: false, 
      success : function(data){ 
       $("#list_template").empty(); 
       $("#list_template").html(data); 
       $("#add").die('click').live("click",function(){ 
        alert("Added"); 
       }); 
      } 
     });   
}); 
+0

是的,謝謝它爲我工作:) – Bheem