jquery 對後來生成的js程式碼的click事件無效
阿新 • • 發佈:2019-01-01
直接寫在頁面裡面的click事件有效:
<a class="deleteCls" beanId="${bean.id }" href="JavaScript:void(0)">刪除</a>
$("a.deleteCls").click(function() {
alert("del");
});
但是在js裡面生成的程式碼:
str += "<td><a class='deleteCls' beanId='" + item.id + "' href='javascript:void(0)'>刪除</a></td>";
click就失效了,查了資料說是後來生成的程式碼,jquery沒有繫結click事件,具體是沒有做深入瞭解,
下面是解決方法:
將$("a.deleteCls").click(function() {
alert("del");
});
修改成(tableList是table表的id,生成的程式碼在table標籤裡面):
$("#tableList").on("click","a.deleteCls",function(){
alert("del");
});
解決了,現在生成的程式碼的click事件也可以響應了!