如何动态删除javascript中的元素?
是否有一种方法可以使用javascript或jquery动态删除元素。假设我有一个创建新元素的函数createElements(),另一个函数removeElement()将删除相应的元素。您会注意到,当您运行代码段时,当您单击“删除”按钮时,所有元素都消失了!我如何实现这个代码?难道没有一个jquery选择器可以让我简单地使用removelement(这个)或类似的东西吗?欢迎提出任何建议:)谢谢如何动态删除javascript中的元素?,javascript,jquery,html,Javascript,Jquery,Html,是否有一种方法可以使用javascript或jquery动态删除元素。假设我有一个创建新元素的函数createElements(),另一个函数removeElement()将删除相应的元素。您会注意到,当您运行代码段时,当您单击“删除”按钮时,所有元素都消失了!我如何实现这个代码?难道没有一个jquery选择器可以让我简单地使用removelement(这个)或类似的东西吗?欢迎提出任何建议:)谢谢 函数createElements(){ const boom=document.getElem
函数createElements(){
const boom=document.getElementById('boom');
boom.insertAdjacentHTML(
“beforeend”,“动态创建的新元素耶!删除”
);
}
函数removeElement(){
警报('元素动态删除booooooo!')
$('.newElem').remove();
}
创建新元素
只需遵循一个API即可。使用纯JavaScript或jQuery。我还建议你使用通畅的方法。此外,删除元素的方式也是错误的。您正在删除所有内容
这样看:
$(函数(){
$(“按钮添加”)。单击(函数(){
$(“#boom”).after(“动态创建的新元素yay!删除”);
});
$(文档)。在(“单击”,“删除”,函数()上){
警报('元素动态删除booooooo!')
$(this).closest(“.newElem”).remove();
});
});代码>
创建新元素
只需遵循一个API即可。使用纯JavaScript或jQuery。我还建议你使用通畅的方法。此外,删除元素的方式也是错误的。您正在删除所有内容
这样看:
$(函数(){
$(“按钮添加”)。单击(函数(){
$(“#boom”).after(“动态创建的新元素yay!删除”);
});
$(文档)。在(“单击”,“删除”,函数()上){
警报('元素动态删除booooooo!')
$(this).closest(“.newElem”).remove();
});
});代码>
创建新元素
您可以这样做:
函数createElements(){
const boom=document.getElementById('boom');
boom.insertAdjacentHTML(
“beforeend”,“动态创建的新元素耶!删除”
);
}
函数移除元素(元素){
警报('元素动态删除booooooo!')
$(element.parent(“.newElem”).remove();
}
创建新元素
您可以这样做:
函数createElements(){
const boom=document.getElementById('boom');
boom.insertAdjacentHTML(
“beforeend”,“动态创建的新元素耶!删除”
);
}
函数移除元素(元素){
警报('元素动态删除booooooo!')
$(element.parent(“.newElem”).remove();
}
创建新元素要始终删除包含“删除”按钮的div,必须遍历DOM树。jQuery在这方面有很多优点:
在这种情况下,我将做以下工作:
var-elementCounter=0;
函数createElements(){
const boom=document.getElementById('boom');
boom.insertAdjacentHTML(
“beforeend',“”+elementCounter+”:动态创建的新元素耶!删除”
);
elementCounter++;
}
函数removeElement(事件){
警报('元素动态删除booooooo!')
$(event.target).closest('.newElem').remove();
}
创建新元素要始终删除包含“删除”按钮的div,必须遍历DOM树。jQuery在这方面有很多优点:
在这种情况下,我将做以下工作:
var-elementCounter=0;
函数createElements(){
const boom=document.getElementById('boom');
boom.insertAdjacentHTML(
“beforeend',“”+elementCounter+”:动态创建的新元素耶!删除”
);
elementCounter++;
}
函数removeElement(事件){
警报('元素动态删除booooooo!')
$(event.target).closest('.newElem').remove();
}
创建新元素
您的代码段创建并删除元素。您还想用它做什么?@Victoria Ruiz如果您继续添加新元素,然后尝试删除某个特定元素,您将看到这样的问题:您的删除代码会删除class=newElem的所有元素。这不是您想要的吗?您的代码段创建并删除了元素。您还想用它做什么?@Victoria Ruiz如果您继续添加新元素,然后尝试删除某个特定元素,您将看到这样的问题:您的删除代码会删除class=newElem的所有元素。那不是你想要的吗?是的!我在找这样的东西!!谢谢男人:戴尔斯!我在找这样的东西!!谢谢男士:请注意,我添加了一个元素计数器,只有这样你才能知道你是否删除了正确的元素。谢谢女士。这就是我试图实现的。注意,我添加了一个元素计数器,它只在那里,这样你就可以知道你是否删除了正确的元素。谢谢,女士。这正是我想说的implement@Ignorant23不客气。。。我建议这个方法比公认的好,因为:1。它完全使用jQuery,而不是纯JavaScript。2.它使用通畅的JavaScript,这意味着HTML中没有JavaScript内容。对不起,我想接受两个答案,但只能接受一个答案:/我接受了另一个答案,因为函数createElements()是我项目中的一个关键组件,无法删除。如果不是这样的话,我肯定会选择你的解决方案,因为你上面提到的原因。再次感谢您的帮助。@Ignorant23啊。。。可以所以你需要createElement()
函数,是吗。那好吧。祝你一切顺利<代码>:)
@Ignorant23您