我正在使用带有c#代码的Asp.net,VS 2010。 我有一个带有gridview的页面,显示了一个成员列表。我想使用没有任何ajax的javascript来过滤网格中的行作为用户类型。例如,如果用户键入“Jo”,则“John”和“Jonny”的行将保留,其他行将被过滤掉。
感谢。
答案 0 :(得分:0)
在这种情况下,肯定JQuery会成为你的朋友。 www.jquery.com 尝试一些用于一般用法的教程。 然后在Init脚本中引用Object,直接搜索带有这些字母的所有TD,并添加“.each()。remove(this);”
应该可以使用,否则请粘贴更多代码。
LG Jonas Plitt
答案 1 :(得分:0)
Here's您需要的工作示例
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();
}
};
});
});
});
};
然后你需要做的就是,在你的页面头部或启动.js文件中包含上面的代码段后,为你想要主动过滤网格的每个文本框调用下面的代码:
$(function () { SetupFilter("myTextBox", "myGridView", "My Column Name"); });