1. 程式人生 > >為什麼ajax加載出來的html,無法用選擇器繫結事件?

為什麼ajax加載出來的html,無法用選擇器繫結事件?

問題:使用Ajax非同步請求頁面,正常顯示,但是頁面上的按鈕,無法新增點選事件
分析:Ajax非同步載入的,整個頁面載入完成後,找不到你非同步載入的DIV或者事件。
*解決:使用 delegate() 方法的事件處理程式**

            delegate() 方法為指定的元素(屬於被選元素的子元素)新增一個或多個事件處理程式,並規定當這些事件發生時執行的函式。
            使用 delegate() 方法的事件處理程式適用於當前或未來的元素(意思是:可以為生成的頁面新增事件)。

使用:向未來的(新生成的)元素新增事件處理程式

</script>
$(document).ready(function(){
  $("div").delegate("p","click",function(){
    $(this).slideToggle();
  });
});
</script>