0

我想过滤掉/隐藏可能不相关的行。

所有行都有“dataRow”类

每行包含 6 列。第一列包含一个标签,接下来的 5 列都包含值。

如果特定行中的所有值(第 1 列中的标签除外)都包含 0,那么我想隐藏该行。

在 jQuery 中实现这一点的好方法是什么?

4

1 回答 1

1

您可以尝试计算sum每一行,然后相应地隐藏它。

$("tr.dataRow").each(function(){
  var hide = false;
  $("td:gt(0)", this).each(function(){
    if(+$(this).text()){
      hide = true;
    }
  });
  $(this).toggle(hide);
});

很高兴知道是否所有目标td元素都是tr.dataRow, then 的子元素.children()


如果是上面的脚本,这里有一个变体使用parseFloat代替。虽然,这两个代码都应该工作。

$(function () {
  $("tr.dataRow").each(function () {
    var hide = false;
    $("td:gt(0)", this).each(function () {
      if (parseFloat($(this).text()) > 0) {
        hide = true;
      }
    });
    $(this).toggle(hide);
  });
});
于 2013-02-18T22:13:41.150 回答