我有一个元素列表,我想删除没有属性和子元素的div元素。
示例代码:
<div class="wrapper">
<div class="xx-1"></div>
<div id="yy-1"></div>
<div></div>
<div><h1>Hello World!</h1></div>
<div></div>
<div></div>
</div>
如何在包装类中删除<div></div>
?
答案 0 :(得分:3)
如果要删除的条件是:
然后你可能想要一个过滤器:
$(".wrapper div").filter(function() {
return this.attributes.length == 0
&& this.childNodes.length == 0;
}).remove();
jQuery中的div:empty
选择器将删除所有没有子节点的DIV标记,包括具有属性且没有子节点的DIV标记。
答案 1 :(得分:1)
你可以使用过滤器。
$(".wapper div").filter(function () {
return $(this).text() == "";
}).remove();
这将删除所有空div。
答案 2 :(得分:0)
$('div:not([class]):not([id]):not(:has(*))').remove();
编辑好的,这仍然不是解决方案,因为它只是检查class
和id
属性。