jquery - 找到值为 0 的 td

标签 jquery

我的 html 页面中有一个这样的表格

<table id="mytable">
  <tr id="classified">
    <td>1</td>
  </tr>
  <tr id="unclassified">
    <td>0</td>
  </tr>    
</table>

所以,在 document.ready 上我想检查哪一列有 0 值,如果值为 o 则隐藏该行,

我已经编写了这段代码,但似乎不起作用

$(document).ready(function IsValidTableContent() {
    $('#mytable tr td').each(function () {
        if ($(this).val() == 0) {
            $(this).hide();
        } else {
            $(this).show();
        }
    });
});

最佳答案

您可以使用 :contains() 找到该 td :

$("#mytable td:contains(0)");

fiddle :http://jsfiddle.net/UCgSL/

警告:

如果您有其他单元格包含 0,但不完全等于 0,:contains 也会将这些单元格包含在匹配项中。这意味着 1001,000 也可能出现,因为它们也包含 0。如果您只想要那些值为 0 的值,而不需要其他值,则应该考虑使用过滤器:

$("#mytable td").filter(function(){
  return $(this).text() == 0;   
});

fiddle :http://jsfiddle.net/UCgSL/1/

自定义过滤器选择器

如果使用 .filter 太冗长,您可以推出自己的过滤器选择器:

$.expr[":"].exactly = function( e, i, m ) {
    return $(e).text() == m[3];
};

$("#mytable td:exactly(0)");​

fiddle :http://jsfiddle.net/UCgSL/2/

关于jquery - 找到值为 0 的 td,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10779892/

相关文章:

javascript - 为缩略图 slider 添加淡入淡出效果或预加载 li 元素

jquery某类元素索引

jquery - MVC 4 Razor 和 Jquery UI datepicker() "Object doesn' t 支持属性或方法”

javascript - onclick() 重复函数

jquery - 显示刚刚单击的元素的文本

javascript - 为什么第二次点击按钮后会出现 fancybox 弹出窗口?

jquery - 使用 jquery 和输入范围增加 CSS 动画旋转持续时间

javascript - 强化投诉 "Hardcoded Encryption Key"mozila pdf.js

javascript - 加载图片到div,涉及到PHP和jQuery

javascript - 事件处理 jQuery unclick() 和 unbind() 事件?