在javascript中从没有for循环的父级中删除所有div子级
我的javascript中有以下代码:在javascript中从没有for循环的父级中删除所有div子级,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我的javascript中有以下代码: for (var a = 0; a < cnt; a++) { var element = document.getElementById("button" + a).getElementsByTagName("div"); for (index = element.length - 1; index >= 0; index--) { element[index].parentNode.removeChi
for (var a = 0; a < cnt; a++) {
var element = document.getElementById("button" + a).getElementsByTagName("div");
for (index = element.length - 1; index >= 0; index--) {
element[index].parentNode.removeChild(element[index]);
}
$("#button" + a).append("Some large html data");
}
for(var a=0;a=0;index--){
元素[index].parentNode.removeChild(元素[index]);
}
$(“#按钮”+a).append(“一些大型html数据”);
}
我正在删除父id“button0”、“button1”中的所有子项。。。等等,这些都是div。
然后将新数据附加到这些家长
然而,当cnt超过200(通常是200)时,执行这段特定代码需要很长时间。我怎样才能加快速度呢?有没有其他方法可以删除所有的子div而不必逐一检查它们?您可以使用jQuery删除它们,但我不知道这会快多少。在封面下,它必须做几乎相同的工作:
for (var a = 0; a < cnt; a++) {
$("#button" + a + " div").remove().end().append("Some large html data");
}
for(var a=0;a
试试这个:您可以使用子项选择器删除它们,而无需遍历子项
for (var a = 0; a < cnt; a++) {
//remove div elements inside button
$("#button"+a+" > div").remove();
$("#button" + a).append("Some large html data");
}
现在,删除子div
的jQuery脚本如下
$('div.buttonDiv').each(function(){
$(this).children("div").remove();
$(this).append("Some large html data");
});
如果您只需向所有要删除其子级的按钮添加一个类,则会更容易。假设您将类
按钮添加到所有类中。然后你可以这样做:
$('.button > div').remove(); // Removes all direct children divs of the .button element.
或
你好,p1
你好,p2
你好,世界,我是斯潘
$('.main p').remove();//任意深度
$('.main>p').remove();//直系子女
如果您在这个文档中添加一个fiddle,效果会更好。getElementById(“按钮”+a)。innerHTML=“”;如果可能的话,请共享html结构和JSFIDLE链接(“按钮”+a)父div将有带有div和image元素的子级,我只想删除属于div元素的子级。您可以在按钮上添加一个类吗?
$('.button > div').remove(); // Removes all direct children divs of the .button element.
$('.button div').remove(); // Removes all divs inside the `.button` element.
<div class="main">
<p>hello p1</p>
<p>hello p2</p>
<span> hello world this is span </span>
</div>
$('.main p').remove(); // any number of depths
$('.main > p').remove(); // immediate children