環(huán)境:Jquery1.10
任務(wù):使用ajax異步更新頁面信息
現(xiàn)象:更新后的html頁面上的js失效
問題:使用ajax更新的元素不能綁定事件
相關(guān)代碼:
五常ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!
$('#a').click(function(){ alert('這個事件不能綁定到新html的$(#a)'); }); $('#search').click(function() { $.ajax( { data : $('#conditions').serialize(), async : false, type : "POST", dataType : 'html', error : function(request) { alert("請求數(shù)據(jù)時出錯,請檢查網(wǎng)絡(luò)連接。"); }, success : function(data) { $('#ajaxform').html($(data).find('#ajaxform').html()); } } }); });
解決方案:
1、剛開始,我認為新更新的元素沒有綁定事件,嘗試各種方法來綁定,但是都沒有用,于是使用比較笨的一個方案,
將所有需要的js在success中重新綁定。
代碼:
success : function(data) { $('#ajaxform').html($(data).find('#ajaxform').html()); $('#a').click(function(){ alert('這是一個愚蠢的行為'); }); }
2、不能在更新后重新綁定,就在更新前綁定,使用on()來綁定將來的元素。
代碼:
$(document).on('click','#a',function(){ alert('將事件綁定到未來的元素#a上'); }); $('#search').click(function() { $.ajax( { ... } ); });
參考鏈接:http://www.cnblogs.com/leejersey/p/3545372.html
標題名稱:Jquery-事件綁定未來元素
本文路徑:http://aaarwkj.com/article28/igcccp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站設(shè)計公司、標簽優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、軟件開發(fā)、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)