js实现表格筛选功能


Posted in Javascript onJanuary 18, 2017

js实现表格筛选功能

本应用就两个主要实现:

1.表格的id 和 class之间的命名关系

请看图: 将组名和个人信息联表格联系起来,这样会很好的操作表格

js实现表格筛选功能

HTML代码:

<tr class="parent" id="row_01"><td colspan="3">前台设计组</td></tr>
   <tr class="child_row_01"><td>张三</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_01"><td>李四</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_01"><td>胡歌</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="parent" id="row_02"><td colspan="3">前台开发组</td></tr>
   <tr class="child_row_02"><td>李三</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_02"><td>张无忌</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_02"><td>孔子</td><td>男</td><td>浙江宁波</td></tr>

2.就是筛选功能的使用:使用filter联合contains将输入框的字加入contains进行筛选

javascript代码:

//设置列表查询
 $("#filterName").keyup(function () {
  $("table tbody tr").stop().hide() //将tbody中的tr都隐藏
    .filter(":contains('"+($(this).val())+"')").show(); //,将符合条件的筛选出来
  
  });

下面是完整代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>表格应用</title>
 <style>
  *{
   margin: 0;
   padding: 0;
  }
  .box{
   border: 1px solid #000;
   margin:50px auto;
   width: 340px;
   padding: 10px 10px;
  }
  .box table{
   margin: auto;
  }
  .box .box-top{
   width: 303px;
   margin: 5px auto;
  }
  .box table tr td,th{
   padding: 5px 30px;
   text-align: center;
  }
  .box table .parent{
   background: lightgray;
  }
  .selected{
   background: gray !important;
  }
  .selectHeight{
   background: darkseagreen !important;
  }
 </style>
</head>
<body>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
 $(function () {
  //默认让王五选中
  $("tr:contains('王五')").addClass("selectHeight")
  //点击让其展示出列表 默认让其都隐藏
  $(".box tr.parent").click(function () {
   $(this)
    .toggleClass("selected")
    .siblings(".child_"+this.id).stop().toggle();
  }).click();//此行代码表示要立即执行
  //设置列表查询
  $("#filterName").keyup(function () {
   $("table tbody tr").stop().hide() //将tbody中的tr都隐藏
    .filter(":contains('"+($(this).val())+"')").show(); //,将符合条件的筛选出来
  });
 });
</script>
<div class="box">
 <div class="box-top">
  <span>筛选:</span><input type="text" id="filterName">
 </div>
 <table>
  <thead>
   <tr>
    <th>姓名</th>
    <th>性别</th>
    <th>暂住地</th>
   </tr>
  </thead>
  <tbody>
   <tr class="parent" id="row_01"><td colspan="3">前台设计组</td></tr>
   <tr class="child_row_01"><td>张三</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_01"><td>李四</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_01"><td>胡歌</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="parent" id="row_02"><td colspan="3">前台开发组</td></tr>
   <tr class="child_row_02"><td>李三</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_02"><td>张无忌</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_02"><td>孔子</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="parent" id="row_03"><td colspan="3">后台设计组</td></tr>
   <tr class="child_row_03"><td>王五</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_03"><td>单志永</td><td>男</td><td>浙江宁波</td></tr>
   <tr class="child_row_03"><td>刘粒粒</td><td>男</td><td>浙江宁波</td></tr>
  </tbody>
 </table>
</div>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
Jquery + Ajax调用webService实例代码(asp.net)
Aug 27 Javascript
jtable列中自定义button示例代码
Nov 21 Javascript
JS根据key值获取URL中的参数值及把URL的参数转换成json对象
Aug 26 Javascript
js实现精确到秒的日期选择器完整实例
Apr 30 Javascript
网页前端登录js按Enter回车键实现登陆的两种方法
May 10 Javascript
原生JS实现圆环拖拽效果
Apr 07 Javascript
详解vue组件开发脚手架
Jun 15 Javascript
Auto.js自动收取自己和好友蚂蚁森林能量脚本
Jun 28 Javascript
详解Axios 如何取消已发送的请求
Oct 20 Javascript
Vue代码整洁之去重方法整理
Aug 06 Javascript
jQuery实现开关灯效果
Aug 02 jQuery
angular *Ngif else用法详解
Dec 15 Javascript
js放大镜放大购物图片效果
Jan 18 #Javascript
详解vue 中使用 AJAX获取数据的方法
Jan 18 #Javascript
easyui 中的datagrid跨页勾选问题的实现方法
Jan 18 #Javascript
JavaScript日期对象(Date)基本用法示例
Jan 18 #Javascript
jQuery中的一些小技巧
Jan 18 #Javascript
AngularJS Select(选择框)使用详解
Jan 18 #Javascript
基于JavaScript实现屏幕滚动效果
Jan 18 #Javascript
You might like
学习discuz php 引入文件的方法DISCUZ_ROOT
2009/06/21 PHP
php实现改变图片直接打开为下载的方法
2015/04/14 PHP
学习php设计模式 php实现桥梁模式(bridge)
2015/12/07 PHP
php计算多个集合的笛卡尔积实例详解
2017/02/16 PHP
老生常谈php 正则中的i,m,s,x,e分别表示什么
2017/03/02 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
input 输入框内的输入事件详细分析
2010/03/17 Javascript
jQuery UI Autocomplete 1.8.16 中文输入修正代码
2012/04/16 Javascript
js数组中如何随机取出一个值
2014/06/13 Javascript
jquery 操作css样式、位置、尺寸方法汇总
2014/11/28 Javascript
js实现Select下拉框具有输入功能的方法
2015/02/06 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
详解jQuery插件开发方式
2016/11/22 Javascript
BootStrap 弹出层代码
2017/02/09 Javascript
input 标签实现输入框带提示文字效果(两种方法)
2017/10/09 Javascript
[48:31]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第一场 2月2日
2021/03/11 DOTA
wxpython 学习笔记 第一天
2009/02/09 Python
paramiko模块安装和使用(远程登录服务器)
2014/01/27 Python
Python中if __name__ == '__main__'作用解析
2015/06/29 Python
Python+微信接口实现运维报警
2016/08/27 Python
Python 对象中的数据类型
2017/05/13 Python
python 字典操作提取key,value的方法
2019/06/26 Python
Django后台admin的使用详解
2019/07/08 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
python绘制无向图度分布曲线示例
2019/11/22 Python
解决import tensorflow导致jupyter内核死亡的问题
2021/02/06 Python
印尼最大的在线购物网站:MatahariMall.com
2016/08/26 全球购物
SmartBuyGlasses中国:唯视良品(销售名牌太阳镜、墨镜和眼镜框)
2017/07/03 全球购物
美国隐形眼镜网:Major Lens
2018/02/09 全球购物
时尚圣经:The Fashion Bible
2019/03/03 全球购物
高一自我鉴定
2013/12/17 职场文书
咖啡店的创业计划书,让你hold不住
2014/01/03 职场文书
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
岗位职责风险点
2014/03/12 职场文书
教师党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
安全保证书怎么写
2015/02/28 职场文书