从表中删除空单元格及其标签单元格

Remove empty cells and their label cells from a table

本文关键字:单元格 标签 删除      更新时间:2023-09-26

我有一个两行表(标签行和数据行),其中填充了关于正在运行的服务的所有相关信息,但是,在任何给定时间,大约一半的单元格是空的,这取决于运行的是哪个测试。

我正在寻找一个jquery语句,将找到所有空单元格,并隐藏它们与该单元格的标签一起。我已经搜索了相当多,发现这段代码是为了隐藏空单元格

$('table#yourTable tr').each(function(){
  if($(this).children('td:empty').length === $(this).children('td').length){
    $(this).hide();
  }
});

然而,我的"空"单元格是用" 填充的,而不是真正的空。是否有一种方法可以隐藏单元格及其关联的标签单元格?

您可以使用.filter()

$(document).ready(function() {
  var elems = $("tr").filter(function() {
    return this.querySelector("td").innerHTML === " "
  });
  elems.hide();
})

下面的代码将隐藏所有非真正空的单元格和它的标签单元格。

$(function () {
    var $label = $('tr:first');
    $('tr:last td').each(function (index, td) {
        var $td = $(td);
        if ($td.html() != ' ') return;
        $td.hide();
        $label.find('td:eq(' + index + ')').hide();
    });
});