关于动态生成的行内元素添加事件问题
Posted shenwh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于动态生成的行内元素添加事件问题相关的知识,希望对你有一定的参考价值。
平时工作中会遇到动态给某个div加子元素,有时候为了简便,直接如下写法:
var oBox = document.getElementById(‘box‘);
oBox .innerhtml = ‘<button onclick="change();">子元素</button>‘;
还顺便给子元素添加了一个点击事件,但发现当我们再外面定义了change函数之后,点击按钮报错,change is not defined!可想而知,这种动态添加子元素的方法是无法添加事件的,解决如下:
var oBox = document.getElementById(‘box‘);
var oButton = document.createElement(‘button‘);
oBox .appendChild(oButton );
oButton .onclick = function(){....};
这样子生成的元素才会有效,事件才得以添加执行!
以上是关于关于动态生成的行内元素添加事件问题的主要内容,如果未能解决你的问题,请参考以下文章