今天写代码的时候动态生成了一波元素,然后点击事件一直无法触发。刚开始以为是代码写的不对,或者元素绑定错了,但是后来发现在页面写死的数据可以触发点击事件。经过百度后,了解到动态生成的元素,有可能时间还没有绑定到dom元素上,点击事件和正常的写法不同,
for(let o = 1; o < 13; o++){
$("#monthSelect").append("<li>"+year+"年"+o+"月</li>")
}
$("#monthSelect").on('click','li',function(e){
//具体点击事件操作
});
据说还有一种link,了解不深,不过度娘说效率比较低。