Javascript隐藏带有空白字段的Gridview行

时间:2016-02-23 21:39:14

标签: javascript asp.net gridview

我正在重写.Net中的一个网站,我正在尝试重现原始网站的一些功能,但我遇到了绊脚石。

我有一个gridview表,其中第12列,第(11)列是日期字段。我试图继续查询SQL数据库,所以我为我的标准加载所有行,并且我有一对单选按钮。一个显示所有记录,另一个我只想显示日期字段为空白的记录,或者对于Gridview, &nbsp ;

所以我有一个在另一个页面上执行类似操作的函数,但是我没有寻找传统意义上的值,而是在寻找其中包含 &nbsp ; 的单元格。我尝试的一切都失败了。这是我的,但我不知道从哪里开始:

    function refinesearch(x) {
        var rows = $("#GridView1 tr:gt(0)");
        if (x == 1) {
            $("#GridView1 tr").show();
        }
        else {
            $("#GridView1 tr").hide();
            var rowToShow = rows.find("td:eq(12)").filter(":contains(' ')").closest("tr");
            rows.show().not(rowToShow).hide();
        }
    }

我得到的是显示的0行。它非常适合非特殊值,但我不知道足够的javascript来修复测试。有人有想法吗?

1 个答案:

答案 0 :(得分:0)

经过一夜好眠,我得到了这个工作:

    function refinesearch(x) {
        $("#GridView1 tr").hide();
        var rows = $("#GridView1 tr:gt(0)");
        if (x == 1) {
            $("#GridView1 tr").show();
        }
        else {
            $("#GridView1 tr").each(function () { //loop over each row
                if (($(this).find("td:eq(11)").html() == ' ') || ($(this).find("th:eq(11)").text() == 'Index Date')) { //check value of TD and include table header row
                    $(this).show(); //show the row 
                }
            });
        }
    }

在对该主题进行一些阅读后,我对linq查询非常感兴趣,我认为这将是一个更强大的解决方案。