如果 p 标签为空,我希望能够删除 ap 标签的父 div。我已经给出了 p 和 id 并使用了这行代码。
$('#contentempty:empty').parent().remove();
我已经阅读了很多文档,这看起来应该是正确的,但是当我 jsfiddle 它http://jsfiddle.net/timwilks13/78uQm/它不起作用。有谁知道我错过了什么?!谢谢
如果 p 标签为空,我希望能够删除 ap 标签的父 div。我已经给出了 p 和 id 并使用了这行代码。
$('#contentempty:empty').parent().remove();
我已经阅读了很多文档,这看起来应该是正确的,但是当我 jsfiddle 它http://jsfiddle.net/timwilks13/78uQm/它不起作用。有谁知道我错过了什么?!谢谢
您不能在同一页面上多次使用相同的 id,请改用类:
<div>
<p class="contentempty">
Hello
</p>
</div>
<div>
<p class="contentempty">
</p>
</div>
和 JavaScript:(使用单个选择器.contentempty
然后与jQuery.fn.filter链接更快)
$('.contentempty').filter(":empty").parent().remove();
您可以使用 [jQuery.fn.map][2] 自己检查是否为空,然后检查 DOM 节点的 innerHTML 的修剪版本是否等于空字符串""
:
$(".contentempty").map(function() {
return !$.trim(this.innerHTML);
}).parent().remove();
<div>
<p class="contentempty">
Hello
</p>
</div>
<div>
<p class="contentempty"></p>
</div>
JS:
$('.contentempty:empty').parent().remove();
虽然 @NULL 可能对 id 是正确的,但它只能在<p>
实际为空的情况下工作:
<div>
<p id="contentempty">
Hello
</p>
</div>
<div>
<p id="contentempty"></p>
</div>