Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.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 addEventlistener不能在另一个addEventlistener中工作_Javascript - Fatal编程技术网

为什么Javascript addEventlistener不能在另一个addEventlistener中工作

为什么Javascript addEventlistener不能在另一个addEventlistener中工作,javascript,Javascript,我有一个HTML表单,我想创建一个CRUD操作。我可以提交表单并显示用户数据,但当我创建一个更新按钮并希望为更新和删除按钮添加一个addEventListener时。按钮点击不起作用。请检查blow代码“更新”eventlistenr在测试中不起作用。我有一个警报 window.onload=function(){ var用户=[]; var btn=document.querySelector(“#btn”); 控制台日志(btn); var form=document.querySelec

我有一个HTML表单,我想创建一个CRUD操作。我可以提交表单并显示用户数据,但当我创建一个更新按钮并希望为更新和删除按钮添加一个addEventListener时。按钮点击不起作用。请检查blow代码
“更新”
eventlistenr在测试中不起作用。我有一个警报

window.onload=function(){
var用户=[];
var btn=document.querySelector(“#btn”);
控制台日志(btn);
var form=document.querySelector(“#form”);
btn.addEventListener(“单击”,函数(){
var obj={
名称:document.querySelector(“#name”).value,
地址:document.querySelector(“#address”).value,
年龄:document.querySelector(“#age”).value,
}//obj到此结束
用户推送(obj);
console.log(用户);
var userTable=document.querySelector('#userTable');
var tbody=document.querySelector('tbody');
var tr=document.createElement('tr');
t附肢儿童(tr);
对于(var i=0;i{
//console.log(e.target.id)
控制台日志(“更新工作”);
});
del.addEventListener('单击',()=>{
//console.log(e.target.id)
控制台日志(“删除工作”);
});
form.reset();
}
tr.appendChild(tdata1);
tr.appendChild(tdata2);
tr.appendChild(tdata3);
tr.appendChild(tdata4);
tr.appendChild(tdata5);
});//btn事件侦听器到此结束
}//窗口加载在此结束

积垢
添加用户
提交
使用者
名称
地址
年龄
&时代;
更新用户

这是由于元素是动态创建的。您应该使用事件委派来处理事件

下面是一篇关于事件委派的文章

查看与您的疑问相关的旧帖子解决方案


这是由于元素是动态创建的。您应该使用事件委派来处理事件

下面是一篇关于事件委派的文章

查看与您的疑问相关的旧帖子解决方案


你有很多打字错误,但这里:

但基本上我删除了这些行:

tdata4.innerHTML = update.outerHTML;
tdata5.innerHTML = del.outerHTML;
以及用于更新的重复addEventListener:

update.addEventListener("click", function() {
  console.log('update clicked');
});
window.onload=function(){
var用户=[];
var btn=document.querySelector(“#btn”);
var form=document.querySelector(“#form”);
btn.addEventListener(“单击”,函数(){
var obj={
名称:document.querySelector(“#name”).value,
地址:document.querySelector(“#address”).value,
年龄:document.querySelector(“#age”).value,
}//obj到此结束
用户推送(obj);
var userTable=document.querySelector('#userTable');
var tbody=document.querySelector('tbody');
var tr=document.createElement('tr');
t附肢儿童(tr);
对于(var i=0;i{
日志(“删除id上的工作”,例如target.id);
});
form.reset();
}
tr.appendChild(tdata1);
tr.appendChild(tdata2);
tr.appendChild(tdata3);
tr.appendChild(tdata4);
tr.appendChild(tdata5);
});//btn事件侦听器到此结束
}//窗口加载在此结束

积垢
添加用户
提交
使用者
名称
地址
年龄
&时代;
更新用户

您有很多打字错误,但这里:

但基本上我删除了这些行:

tdata4.innerHTML = update.outerHTML;
tdata5.innerHTML = del.outerHTML;
以及用于更新的重复addEventListener:

update.addEventListener("click", function() {
  console.log('update clicked');
});
window.onload=function(){
var用户=[];
var btn=