我有许多动态创建的表。在这些表中是可以隐藏或不隐藏的数据行。有时表中的所有行都是隐藏的。即使它们被隐藏,<table>
仍会施加其底部边距,因此它仍会占用显示屏上的空间。
如果表中的所有行都被隐藏了,有没有办法隐藏整个表?
答案 0 :(得分:0)
假设您有一个类table--dynamic
的表,请执行
$(".table--dynamic")
.filter(function(){
return $(this).find("tr:visible").length < 1;
})
.hide();
&#13;
table {
margin: 1em;
padding: 5px;
background: blue;
color: white;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table class="table--dynamic">
<tbody>
<tr style="display: none;">
<td>foo</td>
</tr>
</tbody>
</table>
<table class="table--dynamic">
<tbody>
<tr>
<td>foo</td>
</tr>
</tbody>
</table>
&#13;