javascript - jQuery 根据表格内容隐藏行

标签 javascript jquery html-table

我首先有一个表,假设由 tr 和 td 定义 4x4 最后一个 td 包含一个复选框,它只能是 2 个选项,完整或不完整(选中或未选中)。

现在,在表格顶部,我有另一个下拉列表,用作过滤器(全部、已完成、不完整)

根据过滤器值,我的JS隐藏或显示请求的数据:

    var sel = $("#Filter option:selected").text();

    if (sel == "All") {
        $('tr').find('td:has(:checkbox:checked)').parent().show();
        $('tr').find('td:has(:checkbox:not(:checked))').parent().show();
    }
    if (sel == "Complete") {
        $('tr').find('td:has(:checkbox:not(:checked))').parent().hide();
        $('tr').find('td:has(:checkbox:checked)').parent().show();
    }
    if (sel == "Incomplete") {
        $('tr').find('td:has(:checkbox:checked)').parent().hide();
        $('tr').find('td:has(:checkbox:not(:checked))').parent().show();
    }

这就像一个魅力。

现在,我想更改下拉列表的复选框。 但我找不到 JQuery 的方法来做到这一点。 我不知道比较 tr 内 td 内下拉列表内文本的语法。

我尝试过:

$('tr').find('td').find(".dropdown :selected").parent().hide();

但我找不到指定所选选择内文本的方法..

最佳答案

使用这样的东西:

$("tr td .dropdown:selected[value='WHATEVER']").parent().hide();

测试 drop 元素的值。或者,如果您想测试下拉元素的文本:

$("tr td .dropdown:selected:contains(WHATEVER)").parent().hide();

关于javascript - jQuery 根据表格内容隐藏行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24707459/

相关文章:

javascript - HTML 选择下拉菜单,Jquery 问题

javascript - 检测上传窗口关闭jquery

css - 覆盖 html css 中的跨度并使用 TD

html - 在 Bootstrap 表的第一行和第二行之间添加空格

javascript - 如何将数字附加到javascript变量

javascript - 如何验证至少已选择这些单选按钮之一?

javascript - Youtube 有趣的页面加载方法

javascript - 我想在聊天机器人上写一个打字机

javascript - 正则表达式检测数字但不检测小数

javascript - 为什么我不能向我的 HTML 表格中动态添加行?