Jquery 使用选择器以空div为目标进行删除

Jquery 使用选择器以空div为目标进行删除,jquery,css-selectors,Jquery,Css Selectors,如果div为空,我将尝试删除它。我有多个div与同一个类,我想删除它,除非它有文本或图像。我希望它忽略空白。我用的是: if($.trim($(".C1").html()) == "") { $(".C1").remove(); } 然后,我意识到我需要为每个要删除的div输入一个唯一的id或类,因此我发现这是可行的: if($.trim($(".C1").html()) == "") { $(".C1").remove(); } if($.trim($(".

如果div为空,我将尝试删除它。我有多个div与同一个类,我想删除它,除非它有文本或图像。我希望它忽略空白。我用的是:

    if($.trim($(".C1").html()) == "") {
  $(".C1").remove();
}
然后,我意识到我需要为每个要删除的div输入一个唯一的id或类,因此我发现这是可行的:

    if($.trim($(".C1").html()) == "") {
  $(".C1").remove();
}

    if($.trim($(".C2").html()) == "") {
  $(".C2").remove();
}
等等

有没有一种方法可以在一个脚本中实现这一点?我尝试过这样做:.C1、.C2、.C3等等,但这只在所有div都为空时才起作用

$(".C1").filter(':empty').remove()

为此,可以使用jQuery的选择器

// Removes every "empty" element.
$(":empty").remove();
这是一个具体的例子

$(函数(){
$(“.foo、.bar、.baz”)
.filter(函数(μ,el){
返回$(el).为(“:空”);
})
.remove();
log(“已删除空:,$(“.foo”)。长度==0);
});

不空
您可以使用jQuery的选择器来实现此目的

// Removes every "empty" element.
$(":empty").remove();
这是一个具体的例子

$(函数(){
$(“.foo、.bar、.baz”)
.filter(函数(μ,el){
返回$(el).为(“:空”);
})
.remove();
log(“已删除空:,$(“.foo”)。长度==0);
});

不空

另一个选项是检查子项计数

$(document).ready(function(){
    $('.C1').each(function(){
        if($(this).children().length == 0){
           $(this).remove();     
        }
    });
});

jsiddle链接:

另一个选项是检查子项计数

$(document).ready(function(){
    $('.C1').each(function(){
        if($(this).children().length == 0){
           $(this).remove();     
        }
    });
});

jsiddle链接:

感谢该函数使用多个选择器:$(“.C1.C2.C3.C4”).filter(函数(){return!this.innerHTML.trim();}).remove();感谢该函数使用了多个选择器:$(“.C1.C2.C3.C4”).filter(函数(){return!this.innerHTML.trim();}).remove();这是一个很好的解决方案。我会用这个,非常感谢。这是一个很好的解决方案。我会用这个,非常感谢。