jquery:爲動態加載的元素綁定事件

最近在作項目的時候發現的一個問題,經過ajax動態加載出來的一個button值綁定不了點擊事件。我使用的是datatables這款表單插件,表單內容是經過ajax動態渲染出來的。html

解決方案:jquery

經過Google,我發如今jquery1.7版本以前一般使用 .live() 這個事件,可是這個方法在1.9版本被移除了ajax

 

因此,咱們須要找一個替代的方法 .on(),首先讓咱們先來看下這個事件的介紹插件

 

看介紹,這兩個事件作的事情差很少,而後我在具體的介紹中發現了這個代理

 

第一點:.on()事件綁定的元素必須是頁面中已經存在的,也就是靜態html中存在的元素,纔會被綁定。htm

第二點:經過selector參數進行代理,什麼意思呢?就是說當這個參數不爲空的時候,.on()綁定的事件不會直接在綁定的元素上觸發,它會自動匹配內部節點,而後在該節點觸發blog

怎麼理解第二點呢?通俗點說就是:一個父親(已綁定靜態頁面的元素)管着一大堆兒子(動態加載出來的元素),咱們首先找到了父親,而後告訴他其中一個兒子的名字和要乾的事情(具體綁定的事件),而後他就會去讓你指定的這個兒子去幹。這樣好理解吧。事件

 

到這裏,問題就解決了。具體寫法像這樣:文檔

 

以上是我解決該問題的整個過程,但願可以幫助到你,共同進步!!!get

 

本文參考文檔:

https://www.jquery123.com/

相關文章
相關標籤/搜索