如何根据特定条件隐藏jQuery中的行?

时间:2013-02-18 22:02:20

标签: jquery

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

所有行都具有“dataRow”类

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

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

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

1 个答案:

答案 0 :(得分: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的子元素,然后可以使用.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);
  });
});