如果p标记为空,我希望能够删除p标记的父div。我给了p和id并使用了这行代码。
$('#contentempty:empty').parent().remove();
我已阅读了大量文档,看起来它应该是正确的,但是当我发现它http://jsfiddle.net/timwilks13/78uQm/时它不起作用。谁知道我错过了什么?!感谢
答案 0 :(得分:5)
您不能在同一页面上多次使用相同的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();
答案 1 :(得分:2)
<div>
<p class="contentempty">
Hello
</p>
</div>
<div>
<p class="contentempty"></p>
</div>
JS:
$('.contentempty:empty').parent().remove();
答案 2 :(得分:1)
虽然@NULL对于id是正确的,但它只能在<p>
实际为空时才有效:
<div>
<p id="contentempty">
Hello
</p>
</div>
<div>
<p id="contentempty"></p>
</div>