js生成html中的按钮失效

1.什么情况下失效

(1)onclick事件绑定只对dom中存在的元素有效,对于我们后来动态增加的元素是监测不到,所以绑定不了

(2)同样,当你使用var aa = document.getElementsByTagName("动态生成的元素")来获取动态生成的元素的时候也是获取不到的。

(3)因为网页只会执行一次初始化绑定,之后动态生成的dom元素也是监测不到的。

2.解决办法

使用jQuery中的委托(on),将子元素的事件绑定到父元素上(先给已存在的DOM元素绑定onclick事件(button的父级),利用事件委托实现dom事件绑定,最后代码就改成了)
注:父元素一定是在页面初始化就存在的DOM元素。


image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。