如何删除空白行。我只使用deleteRow()
方法删除了一行,但是我只需要删除空的一行。
<table border="1">
<tr>
<td></td>
</tr>
<tr>
<td>testing</td>
</tr>
<tr>
<td></td>
</tr>
</table>
答案 0 :(得分:3)
这是您要找的东西吗?
我们正在做的是让所有td
检查它们是否为空,然后如果其中没有任何文本,则将其删除。
$("td").each(function() {
if (this.innerText === '') {
this.closest('tr').remove();
}
});
td {
height: 20px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table border="1">
<tr>
<td></td>
</tr>
<tr>
<td>123</td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td>456</td>
</tr>
</table>
答案 1 :(得分:0)
您可以使用deleteRow()代替removeChild():
document.querySelectorAll('table tr').forEach(function(e, i) {
if (e.textContent.trim().length == 0) { // if row is empty
e.parentNode.removeChild(e);
}
})
// in jQuery:
//$('table tr').filter((i, e) => e.textContent.trim().length == 0).remove();
<table border="1">
<tr>
<td></td>
</tr>
<tr>
<td>testing</td>
</tr>
<tr>
<td></td>
</tr>
</table>