解決jQuery ajax動(dòng)態(tài)新增節(jié)點(diǎn)無(wú)法觸發(fā)點(diǎn)擊事件的問(wèn)題
在寫ajax加載數(shù)據(jù)的時(shí)候發(fā)現(xiàn),后面添加進(jìn)來(lái)的demo節(jié)點(diǎn)元素,失去了之前的點(diǎn)擊事件。為什么點(diǎn)擊事件失效,我們?cè)撛趺慈ソ鉀Q呢?
其實(shí)最簡(jiǎn)單的方法就是直接在標(biāo)簽中寫onclick="",但是這樣寫其實(shí)是有點(diǎn)low的,最好的方式還是通過(guò)給類名綁定一個(gè)click事件。
解決jQuery ajax動(dòng)態(tài)新增節(jié)點(diǎn)無(wú)法觸發(fā)事件問(wèn)題的兩種解決方法,為了達(dá)到更好的演示效果,假設(shè)在某個(gè)頁(yè)面的body下有以下結(jié)構(gòu)的代碼:
<ul id="demo"> <li class="demo1">a1</li> <li class="demo1">a2</li> <li class="demo1">a3</li> </ul> <script type="text/javascript"> $("#demo").click(function(){ $("#demo").append('<li class="demo1">aaa4</li>'); //動(dòng)態(tài)像ul的末尾追加一個(gè)新元素 }); </script>
方法一:使用live:
live()函數(shù)會(huì)給被選的元素綁定上一個(gè)或者多個(gè)事件處理程序,并且規(guī)定當(dāng)這些事件發(fā)生時(shí)運(yùn)行的函數(shù)。通過(guò)live()函數(shù)適用于匹配選擇器的當(dāng)前及未來(lái)的元素。比如,通過(guò)腳本動(dòng)態(tài)創(chuàng)建的元素。
實(shí)現(xiàn)如下:
$('.demo1').live('click', function(){ alert('OK'); });
方法二:使用on:
可以通過(guò)on方法綁定事件,可以綁定到它的父級(jí)或者body中,實(shí)現(xiàn)如下:
$("#demo").on('click','.demol',function(){ alert('OK') });
通過(guò)上面的兩種方法,都可以解決jQuery ajax動(dòng)態(tài)新增節(jié)點(diǎn)無(wú)法觸發(fā)點(diǎn)擊事件的問(wèn)題。知道方法了,趕緊的試試吧。
以上所述是小編給大家介紹的解決jQuery ajax動(dòng)態(tài)新增節(jié)點(diǎn)無(wú)法觸發(fā)點(diǎn)擊事件的問(wèn)題,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
jQuery EasyUI 開源插件套裝 完全替代ExtJS
JQuery愛好者們的福音 jQuery EasyUI 開源插件套裝 完全替代ExtJS(引用)2010-03-03有關(guān)jQuery中parent()和siblings()的小問(wèn)題
本文通過(guò)一個(gè)實(shí)例給大家介紹有關(guān)parent()和siblings()問(wèn)題原因及解決方案,非常不錯(cuò)具有參考借鑒價(jià)值,感興趣的朋友一起看看吧2016-06-06JQuery實(shí)現(xiàn)表格動(dòng)態(tài)增加行并對(duì)新行添加事件
JQuery實(shí)現(xiàn)表格動(dòng)態(tài)增加行,一直保持最下面有多個(gè)空白行。這樣可以避免一次增加太多行可能導(dǎo)致頁(yè)面內(nèi)容太多,反應(yīng)變慢2014-07-07jQuery validata插件實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇jQuery validata插件實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06基于jquery鼠標(biāo)點(diǎn)擊其它地方隱藏層的實(shí)例代碼
基于jquery鼠標(biāo)點(diǎn)擊其它地方隱藏層的實(shí)例代碼,需要的朋友可以參考下。2011-01-01jQuery插件HighCharts實(shí)現(xiàn)的2D面積圖效果示例【附demo源碼下載】
這篇文章主要介紹了jQuery插件HighCharts實(shí)現(xiàn)的2D面積圖效果,結(jié)合完整實(shí)例形式分析了jQuery插件HighCharts繪制2D面積圖的相關(guān)步驟與屬性設(shè)置技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03jQuery中DOM節(jié)點(diǎn)的刪除方法總結(jié)(超全面)
這篇文章主要介紹了jQuery中DOM節(jié)點(diǎn)的刪除方法,文中介紹的很相信,內(nèi)容包括empty()的基本用法、remove()的有參用法和無(wú)參用法、empty和remove區(qū)別、保留數(shù)據(jù)的刪除操作detach()以及detach()和remove()區(qū)別,需要的朋友可以參考借鑒。2017-01-01