加上「;onclick";纯javascript中动态创建的元素的处理程序

加上「;onclick";纯javascript中动态创建的元素的处理程序,javascript,Javascript,我动态地创建和删除页面上的元素“a”和“button”。我想在创建它们时向它们添加处理程序“onclick”。到目前为止,我看到的所有示例都在jquery中。我如何在纯javascript中做到这一点 您可以使用addEventListener在动态按钮上添加单击侦听器 var btn = document.createElement("button"); btn.addEventListener('click', function(){ alert('button clicked!')

我动态地创建和删除页面上的元素“a”和“button”。我想在创建它们时向它们添加处理程序“onclick”。到目前为止,我看到的所有示例都在jquery中。我如何在纯javascript中做到这一点

您可以使用
addEventListener
在动态按钮上添加单击侦听器

var btn = document.createElement("button");
btn.addEventListener('click', function(){
    alert('button clicked!');
}, false);
document.body.appendChild(btn);

您可以使用
addEventListener
在动态按钮上添加单击侦听器

var btn = document.createElement("button");
btn.addEventListener('click', function(){
    alert('button clicked!');
}, false);
document.body.appendChild(btn);

本例将创建一个包含一些文本的按钮,并将其添加到id为
test
的元素中

var btn = document.createElement('button');
btn.appendChild(document.createTextNode('test'));

btn.addEventListener('click', function() {
    alert('it works');
}, false);

document.getElementById('test').appendChild(btn);

希望这会对您有所帮助。

此示例将创建一个包含一些文本的按钮,并将其添加到id为
test
的元素中

var btn = document.createElement('button');
btn.appendChild(document.createTextNode('test'));

btn.addEventListener('click', function() {
    alert('it works');
}, false);

document.getElementById('test').appendChild(btn);
希望这能帮助您解决问题。

来自:

HTML内容

<table id="outside">
    <tr><td id="t1">one</td></tr>
    <tr><td id="t2">two</td></tr>
</table>
发件人:

HTML内容

<table id="outside">
    <tr><td id="t1">one</td></tr>
    <tr><td id="t2">two</td></tr>
</table>
您可以这样做:

for(var i=0;i<5;i++){
  var a = document.createElement("a");
  a.innerHTML="a"+i;
  document.body.appendChild(a);
  var button = document.createElement("button");
  button.innerHTML="button"+i;
  button.onclick = function(){
    console.log("event on button");
  }
  document.body.appendChild(button);
}
for(var i=0;i您可以这样做:

for(var i=0;i<5;i++){
  var a = document.createElement("a");
  a.innerHTML="a"+i;
  document.body.appendChild(a);
  var button = document.createElement("button");
  button.innerHTML="button"+i;
  button.onclick = function(){
    console.log("event on button");
  }
  document.body.appendChild(button);
}

for(var i=0;这是一个用于vanilla js的文档:请参阅本文:这是一个用于vanilla js的文档:请参阅本文:为什么不“onclick”?要了解有关委派的更多信息,请检查此答案为什么不“onclick”?要了解有关委派的更多信息,请检查此答案