首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用jquery删除没有子级的div

使用jquery删除没有子级的div
EN

Stack Overflow用户
提问于 2009-02-09 06:21:17
回答 6查看 41K关注 0票数 17

如何使用jquery删除没有孩子的特定div (至少没有不是空格的孩子)。例如。

代码语言:javascript
复制
<div id="outer">
    some content
    <div id="removeme"> 


    </div>
    some more content
</div>

我想用id="removeme“完全删除div。

EN

回答 6

Stack Overflow用户

发布于 2010-06-03 22:36:55

我的回答是:

代码语言:javascript
复制
$('#outer > div').filter(function (index) { 
    return $(this).children().length < 1; 
}).remove();

上面写着:

  • 给我#outer
  • 的所有div子节点使用filter去掉所有有子节点的节点
  • 删除我们仍然选择的所有

可悲的是,如果div包含文本,这将删除它,而这可能不是原始发帖所希望的。纯文本不能算作子级。

票数 6
EN

Stack Overflow用户

发布于 2009-02-09 06:28:11

您还可以使用:

$('div:empty').remove();

http://docs.jquery.com/Selectors/empty

票数 2
EN

Stack Overflow用户

发布于 2009-02-09 06:23:45

我找不到一个忽略文本节点的选择器,所以这是我能想到的最快/最脏的代码片段。

代码语言:javascript
复制
$("#header").each(function() { 
    if($(this).children().length < 1) 
        $(this).remove() 
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/527246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档