C# 带javascript的aspx GridView过滤器

C# 带javascript的aspx GridView过滤器,c#,javascript,C#,Javascript,我正在使用Asp.net和c代码,VS 2010。 我有一个带有gridview的页面,其中显示了一个成员列表。我希望使用javascript而不使用任何ajax来过滤网格中作为用户类型的行。例如,如果用户键入“Jo”,则带有“John”和“Jonny”的行将保留,其他行将被过滤掉 谢谢。在这种情况下,JQuery肯定是您的朋友。 www.jquery.com 尝试一些教程,了解一般用法。 然后在Init脚本中引用对象,直接搜索包含这些字母的所有TD,并添加“.each().remove(thi

我正在使用Asp.net和c代码,VS 2010。 我有一个带有gridview的页面,其中显示了一个成员列表。我希望使用javascript而不使用任何ajax来过滤网格中作为用户类型的行。例如,如果用户键入“Jo”,则带有“John”和“Jonny”的行将保留,其他行将被过滤掉


谢谢。

在这种情况下,JQuery肯定是您的朋友。 www.jquery.com 尝试一些教程,了解一般用法。 然后在Init脚本中引用对象,直接搜索包含这些字母的所有TD,并添加“.each().remove(this)”

应该可以,否则请多粘贴一点代码

LG 乔纳斯·普利特(Jonas Plitt)

你所需要的工作示例

function SetupFilter(textboxID, gridID, columnName) {
    $('#' + textboxID).keyup(function () {
        var index;
        var text = $("#" + textboxID).val();

        $('#' + gridID + ' tbody tr').each(function () {
            $(this).children('th').each(function () {
                if ($(this).html() == columnName)
                    index = $(this).index();
            });

            $(this).children('td').each(function () {
                if ($(this).index() == index) {
                    var tdText = $(this).children(0).html() == null ? $(this).html() : $(this).children(0).html();

                    if (tdText.indexOf(text, 0) > -1) {
                        $(this).closest('tr').show();
                    } else {
                        $(this).closest('tr').hide();
                    }
                };
            });
        });
    });
};
然后,在页面标题或startup.js文件中包含上述代码段后,您需要做的就是为要主动过滤网格的每个文本框调用以下命令:

$(function () { SetupFilter("myTextBox", "myGridView", "My Column Name"); });