Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在动态创建的元素中单击事件_Javascript - Fatal编程技术网

Javascript 在动态创建的元素中单击事件

Javascript 在动态创建的元素中单击事件,javascript,Javascript,我是Javascript新手,每天都在学习新东西。 在这里,我需要点击按钮,新按钮被创建。现在,我需要再次点击新创建的按钮,再次创建新按钮,以此类推。它必须是纯Javascript的。请帮帮我 document.getElementById("btn").addEventListener("click",function(e) { var btn=document.createElement("BUTTON"); var t=document.createTex

我是Javascript新手,每天都在学习新东西。 在这里,我需要点击按钮,新按钮被创建。现在,我需要再次点击新创建的按钮,再次创建新按钮,以此类推。它必须是纯Javascript的。请帮帮我

 document.getElementById("btn").addEventListener("click",function(e) {
        var btn=document.createElement("BUTTON");
        var t=document.createTextNode("Click Me");
        //Some code to click dynamically created element
        btn.appendChild(t);
        document.body.appendChild(btn);

创建一个函数来创建创建按钮的按钮。注意:您没有将文本节点附加到按钮

如果您想查看DOM中的更改并以另一种方式向按钮添加事件,请检查下面的答案


只需将eventlistener添加到文档中,然后选中标记。 您还可以通过向按钮添加Id或类来进一步解释它,并检查它(如果您需要多个执行不同操作的按钮)

document.addEventListener('click',函数(事件){
var clickedEl=event.target;
如果(单击del.tagName=='按钮'){
clickedEl.innerHTML=“单击!”;
var btn=document.createElement(“按钮”);
var t=document.createTextNode(“单击我”);
附肢儿童(t);
文件.正文.附件(btn);
}
});

单击我
使其成为通用函数,并将单击事件绑定到该方法

功能添加按钮(){
var btn=document.createElement(“按钮”);
btn.type=“按钮”;
var t=document.createTextNode(“单击我”);
附肢儿童(t);
btn.addEventListener(“单击”,添加按钮);
文件.正文.附件(btn);
}
document.getElementById(“btn”).addEventListener(“单击”,添加按钮)

按钮
在这种情况下,jQuery为您做好了工作

$(function($){
  $(document).on('click','button',function(e){
    // do your stuff.
  })
})
下面是使用jQuery的另一个好答案:


因此您需要添加一个单击事件。如果你把它变成一个通用函数,那么重用它就容易多了。或者您可以了解事件委派。@epascarello是的,我需要单击动态创建的元素。但我不知道如何操作它。事件委派如何与动态创建的元素一起工作。请帮助答案是否提供了帮助?以及否决原因?我想提高自己,让你快乐+1,但请注意:
document.body.addEventListener(“单击”…
)对性能不好,因为每次单击页面时,它都会检查某些元素的标记名是否等于数字
476
,并且缺少大写的
e.target.tagName
$(function($){
  $(document).on('click','button',function(e){
    // do your stuff.
  })
})