Html 如果子div为空,则隐藏父div
我有这三列行,想隐藏这两个空列Html 如果子div为空,则隐藏父div,html,jquery,css,wordpress,Html,Jquery,Css,Wordpress,我有这三列行,想隐藏这两个空列 <div class="wp-block-columns"> <div class="wp-block-column"> <div class="wp-block-image">content</div> <div class="tb-field">content</div>
<div class="wp-block-columns">
<div class="wp-block-column">
<div class="wp-block-image">content</div>
<div class="tb-field">content</div>
<div class="tb-field">content</div>
<div class="tb-button>content</div>
</div>
<div class="wp-block-column">
<div class="wp-block-image"> </div>
<div class="tb-field"> </div>
<div class="tb-field"> </div>
<div class="tb-button> </div>
</div>
<div class="wp-block-column">
<div class="wp-block-image"> </div>
<div class="tb-field"> </div>
<div class="tb-field"> </div>
<div class="tb-button> </div>
</div>
</div>
试试这个
jQuery('.wp-block-column').each(function(){
var current_column = jQuery(this);
var image = current_column.find('.wp-block-image');
var field = current_column.find('.tb-field');
var button = current_column.find('.tb-button');
if(jQuery.trim(image.html()) == 0){
current_column.hide();
}
if(jQuery.trim(field.html()) == 0){
current_column.hide();
}
if(jQuery.trim(button.html()) == 0){
current_column.hide();
}
});
我无法理解您的代码是如何无法按您所希望的方式工作的。我只注意到我必须修复div.tb-button标记的html。它需要最后的双引号 话虽如此,为什么不试着对文本的修剪版本进行测试,看看它是否为空。它将更少地横穿DOM,并且使用更少的代码来管理会更快
jQuery('.wp block column')。每个(函数(){
var$this=jQuery(this);
$this.text().trim()==''&$this.remove();
});
如果愿意,可以将“remove”(从DOM中删除元素)替换为“hide”(元素上显示:“none”)。我应该做:
函数checkIfEmpty(parentid,childid){if(document.getElementById(childid).innerHTML==“”){document.getElementById(parentid).style.display='none';}}
我希望这就是您正在寻找的在使用类tb-button将缺少的“结束”添加到元素后,您的代码在这个小提琴中工作。非常感谢。工作非常完美!
jQuery('.wp-block-column').each(function(){
var current_column = jQuery(this);
var image = current_column.find('.wp-block-image');
var field = current_column.find('.tb-field');
var button = current_column.find('.tb-button');
if(jQuery.trim(image.html()) == 0){
current_column.hide();
}
if(jQuery.trim(field.html()) == 0){
current_column.hide();
}
if(jQuery.trim(button.html()) == 0){
current_column.hide();
}
});