我已经在gridview中完成了数据过滤,就像
一样 http://tomcoote.co.uk/wp-content/CodeBank/Demos/columnFilters/demo.html
在本页面。但我的要求与它有所不同。我有一个gridview外面的文本框我想根据这个过滤数据。请尽快帮助我。
提前致谢。
答案 0 :(得分:3)
我自己写了以下函数,你只需要发送你要过滤的列索引,以及你要过滤的文本框的ID。
不要忘记将gridview /表名更改为您的
function filter(columnIndex, id) {
var filterText = $("#" + id).val().toLowerCase();
var cellText = "";
var cellTextSampleToCompare = "";
$("#<%=YOUR_GRIDVIEW_NAME.ClientID%> tr:has(td)").each(function () {
cellText = $(this).find("td:eq(" + columnIndex + ")").text().toLowerCase();
cellText = $.trim(cellText); //removes the spaces in the starting of the string value if exist
cellTextSampleToCompare = cellText.substring(0, filterText.length);
if (filterText != cellTextSampleToCompare) {
$(this).css('display', 'none');
}
else {
$(this).css('display', '');
}
});
}
答案 1 :(得分:1)
如果你正在使用jQuery,那么考虑一下优秀的jQuery DataTables插件,它在一个简单的TABLE元素上运行得非常好:http://www.datatables.net/
答案 2 :(得分:0)
这可能不是你问题的答案,但它可能会帮助那些来到这里的人。
$(document).ready(function () {
$("#txtID").keyup(function () {
_this = this;
$.each($("#grdEmployee tbody").find("tr:has(td)"), function () {
if ($(this).text().toLowerCase().indexOf($(_this).val().toLowerCase()) != -1)
$(this).show();
else
$(this).hide();
});
});
});