基于JQuery的一句代码实现表格的简单筛选


Posted in Javascript onJuly 26, 2010

效果图:
基于JQuery的一句代码实现表格的简单筛选
代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="JqueryTableFilter.aspx.cs" Inherits="JqueryTableFilter" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title></title> 
<script src="Script/jquery-1.3.2-vsdoc.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(function() { 
$("#Text1").keyup(function() { 
var filterText = $(this).val(); 
$("#<%=GridView1.ClientID %> tr").not(":first").hide().filter(":contains('" + filterText + "')").show();; 
}).keyup(); 
}); 
</script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div style="width:60%;"> 
<input id="Text1" type="text" /> 
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
DataKeyNames="OrderID" DataSourceID="SqlDataSource1" 
HorizontalAlign="Left" PageSize="50" > 
<Columns> 
<asp:BoundField DataField="OrderID" HeaderText="OrderID" ReadOnly="True" 
SortExpression="OrderID" InsertVisible="False" /> 
<asp:BoundField DataField="CustomerID" HeaderText="CustomerID" 
SortExpression="CustomerID" /> 
<asp:BoundField DataField="EmployeeID" HeaderText="EmployeeID" 
SortExpression="EmployeeID" /> 
<asp:BoundField DataField="OrderDate" HeaderText="OrderDate" 
SortExpression="OrderDate" /> 
<asp:BoundField DataField="RequiredDate" HeaderText="RequiredDate" 
SortExpression="RequiredDate" /> 
<asp:BoundField DataField="ShippedDate" HeaderText="ShippedDate" 
SortExpression="ShippedDate" /> 
<asp:BoundField DataField="ShipVia" HeaderText="ShipVia" 
SortExpression="ShipVia" /> 
<asp:BoundField DataField="Freight" HeaderText="Freight" 
SortExpression="Freight" /> 
</Columns> 
</asp:GridView> 
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" 
SelectCommand="SELECT top 50 * FROM [Orders]"></asp:SqlDataSource> 
</div> 
</form> 
</body> 
</html>
 
JQuery代码就:
$(function() { 
$("#Text1").keyup(function() { 
var filterText = $(this).val(); 
$("#<%=GridView1.ClientID %> tr").not(":first").hide().filter(":contains('" + filterText + "')").show();; 
}).keyup(); 
});

里面最重要的就是JQuery的选择器:

1:$("#<%=GridView1.ClientID %> tr")选择表格的所有行;
2:not(":first"):除去第一行表头行;
3:filter(":contains('" + filterText + "')"):从上面所选择的行里面筛选出行文本中包含filterText 的行显示出来;
4:最后加一句keyup()是为了在提交后重新触发keyup事件。(但是在这里没有作用因为我用的客户端控件没有ViewState
若是服务器端控件就会看见他的作用)。

JQuery的选择器的强大之处,让我们能救这么简单的实现客户端的简单筛选。最后加一句关于表格筛选有JQuery插件提供
给我们选择, 但是这种简单的功能,我不会去选择加入一个JavaScript文件库,呵呵。
作者:破  浪

Javascript 相关文章推荐
Javascript this 的一些学习总结
Aug 31 Javascript
得到form下的所有的input的js代码
Nov 07 Javascript
基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
Jan 22 Javascript
JavaScript 经典实例日常收集整理(常用经典)
Mar 30 Javascript
Javascript中arguments对象的详解与使用方法
Oct 04 Javascript
微信小程序 九宫格实例代码
Jan 21 Javascript
Vue2.x中的Render函数详解
May 30 Javascript
基于vue实现可搜索下拉框定制组件
Mar 26 Javascript
element-ui表格数据转换的示例代码
Aug 24 Javascript
vue中使用GraphQL的实例代码
Nov 04 Javascript
vue-router结合vuex实现用户权限控制功能
Nov 14 Javascript
javascript canvas实现雨滴效果
Jun 09 Javascript
jQuery getJSON 处理json数据的代码
Jul 26 #Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
Jul 25 #Javascript
用jquery实现下拉菜单效果的代码
Jul 25 #Javascript
利用腾讯的ip地址库做ip物理地址定位
Jul 24 #Javascript
利用google提供的API(JavaScript接口)获取网站访问者IP地理位置的代码详解
Jul 24 #Javascript
来自qq的javascript面试题
Jul 24 #Javascript
6个DIV 135或246间隔一秒轮番显示效果
Jul 24 #Javascript
You might like
模仿OSO的论坛(三)
2006/10/09 PHP
php实现获取文件mime类型的方法
2015/02/11 PHP
PHP数据库连接mysql与mysqli对比分析
2016/01/04 PHP
php上传大文件设置方法
2016/04/14 PHP
PHP数组函数知识汇总
2016/05/12 PHP
[原创]图片分页查看
2006/08/28 Javascript
用json方式实现在 js 中建立一个map
2014/05/02 Javascript
Node.js 的异步 IO 性能探讨
2014/10/08 Javascript
jquery中animate的stop()方法作用实例分析
2015/01/30 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
JavaScript中清空数组的方法总结
2016/12/02 Javascript
jquery表单插件form使用方法详解
2017/01/20 Javascript
js实现楼层导航功能
2017/02/23 Javascript
微信小程序App生命周期详解
2018/01/31 Javascript
还不懂递归?读完这篇文章保证你会懂
2018/07/29 Javascript
jQuery实现为动态添加的元素绑定事件实例分析
2018/09/07 jQuery
vue-router beforeEach跳转路由验证用户登录状态
2018/12/26 Javascript
JavaScript查看代码运行效率console.time()与console.timeEnd()用法
2019/01/18 Javascript
微信小程序如何实现在线客服功能
2019/10/16 Javascript
Vue最新防抖方案(必看篇)
2019/10/30 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
2019/12/12 Javascript
Antd下拉选择,自动匹配功能的实现
2020/10/24 Javascript
原生js拖拽功能制作滑动条实例代码
2021/02/05 Javascript
python 通过xml获取测试节点和属性的实例
2018/03/31 Python
儿童编程python入门
2018/05/08 Python
Python使用Flask-SQLAlchemy连接数据库操作示例
2018/08/31 Python
Pandas Shift函数的基础入门学习笔记
2018/11/16 Python
使用PyCharm安装pytest及requests的问题
2020/07/31 Python
PyCharm最新激活码(2020/10/27全网最新)
2020/10/27 Python
德国最大的拼图在线商店:Puzzle.de
2016/12/17 全球购物
eBay德国站:eBay.de
2017/09/14 全球购物
劳动模范事迹材料
2014/01/19 职场文书
高中军训第一天感言
2014/03/06 职场文书
英语故事演讲稿
2014/04/29 职场文书
英语专业毕业论文答辩开场白
2015/05/27 职场文书
pytorch中的torch.nn.Conv2d()函数图文详解
2022/02/28 Python