动态添加的元素绑定事件注意事项

问题描述:

页面加载时通过js、datatable插件等动态添加的元素, 如:

"columns": [
                {"data": "", "title": "<input type=\"checkbox\" id=\"selectall\" class=\"exportSelect2\"><label for=\"selectall\" class=\"selectTag\"></label>"}
            ]

为其添加点击事件$('#selectall').click(function () {...}),结果没有触发。

原因:

页面初始化时为li元素绑定点击事件,但此时该元素还未加载完成,因此绑定无效。

解决:

动态添加元素时就同时添加onclick(),绑定点击事件:

"columns": [
                {"data": "", "title": "<input type=\"checkbox\" id=\"selectall\" onclick=\"selectall()\" class=\"exportSelect2\"><label for=\"selectall\" class=\"selectTag\"></label>"},
            ]

把$('#selectall').click(function () {...})执行的内容写在onclick()绑定的函数select()里

猜你喜欢

转载自blog.csdn.net/xxtz0522/article/details/85011820