详解jQuery简单的表格应用


Posted in Javascript onDecember 16, 2016

大致介绍

在CSS技术之前,网页的布局基本都是依靠表格制作,当有了CSS之后,表格就被很多设计师所抛弃,但是表格也有他的用武之地,比如数据列表,下面以表格中常见的几个应用来加深对jQuery的认识。

表格变色

基本的结构:

<table>
    <thead>
      <tr><th>姓名</th><th>性别</th><th>暂住地</th></tr>
    </thead>
    <tbody>
      <tr><td>张三</td><td>男</td><td>杭州</td></tr>
      <tr><td>王五</td><td>女</td><td>江苏</td></tr>
      <tr><td>李斯</td><td>男</td><td>北京</td></tr>
      <tr><td>赵六</td><td>女</td><td>兰州</td></tr>
      <tr><td>往往</td><td>男</td><td>酒泉</td></tr>
      <tr><td>李师傅</td><td>男</td><td>东京</td></tr>
    </tbody>
  </table>

1、普通的隔行变色

首先定义两个样式

.even{
    background: #FFF38F;
  }
 .odd{
    background: #FFFFEE;
  } 
 

添加变色

$('tr:odd').addClass('odd');
 $('tr:even').addClass('even');

2、单选框控制表格行高亮

在每一行之前加一个单选按钮,当单击某一行后,此行被选中高亮显示并且单选框被选中

$('tbody>tr').click(function(){
    $(this)
      .addClass('selected')
      .siblings().removeClass('selected')
      .end()
      .find(':radio').attr('checked',true);
  });

3、复选框控制表格行高亮

$('tbody>tr').click(function(){
    if($(this).hasClass('selected')){
      $(this).removeClass('selected')
          .find(':checkbox').attr('checked',false);
    }else{
      $(this).addClass('selected')
          .find(':checkbox').attr('checked',true);
    }
  });

表格展开关闭

基本结构:

<table>
    <thead>
      <tr><th></th><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><td>杭州</td></tr>
      <tr class="child_row_01"><td></td><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><td>北京</td></tr>
      <tr class="child_row_02"><td></td><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><td>酒泉</td></tr>
      <tr class="child_row_03"><td></td><td>李师傅</td><td>男</td><td>东京</td></tr>
    </tbody>
  </table>

添加事件,当点击一个分类的标题时,这个分类关闭或者打开

$('tr.parent').click(function(){
    $(this).toggleClass('selected')
       .siblings('.child_' + this.id).toggle();
  });

表格内容筛选

基本结构:

<table>
    <thead>
      <tr><th></th><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><td>杭州</td></tr>
      <tr class="child_row_01"><td></td><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><td>北京</td></tr>
      <tr class="child_row_02"><td></td><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><td>酒泉</td></tr>
      <tr class="child_row_03"><td></td><td>李师傅</td><td>男</td><td>东京</td></tr>
    </tbody>
  </table>
  <input type="text" id="filterName" />

添加事件

$('#filterName').keyup(function(){
   $('table tbody tr').hide().filter(":contains(' "+($(this).val())+" ' )").show();
 });

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

Javascript 相关文章推荐
javascript[js]获取url参数的代码
Oct 17 Javascript
一个级联菜单代码学习及removeClass与addClass的应用
Jan 24 Javascript
JS实现多物体缓冲运动实例代码
Nov 29 Javascript
使用jQuery获得内容以及内容的属性
Feb 26 Javascript
JQuery给网页更换皮肤的方法
May 30 Javascript
JavaScript 性能优化小结
Oct 12 Javascript
javascript弹出窗口实现代码
Nov 12 Javascript
jQuery中 $ 符号的冲突问题及解决方案
Nov 04 Javascript
JQuery页面随滚动条动态加载效果的简单实现(推荐)
Feb 08 Javascript
JS验证不重复验证码
Feb 10 Javascript
关于js中的鼠标事件总结
Jul 11 Javascript
Vue自定义属性实例分析
Feb 23 Javascript
JS中parseInt()和map()用法分析
Dec 16 #Javascript
HTML5canvas 绘制一个圆环形的进度表示实例
Dec 16 #Javascript
JS数字千分位格式化实现方法总结
Dec 16 #Javascript
jquery插件锦集【推荐】
Dec 16 #Javascript
jQuery Easyui 下拉树组件combotree
Dec 16 #Javascript
JS实现字符串转驼峰格式的方法
Dec 16 #Javascript
详解js数组的完全随机排列算法
Dec 16 #Javascript
You might like
短波收音机简介
2021/03/01 无线电
如何将数据从文本导入到mysql
2006/10/09 PHP
PHP+DBM的同学录程序(5)
2006/10/09 PHP
php实现扫描二维码根据浏览器类型访问不同下载地址
2014/10/15 PHP
WordPress主题中添加文章列表页页码导航的PHP代码实例
2015/12/22 PHP
用php定义一个数组最简单的方法
2019/10/04 PHP
CSS中一些@规则的用法小结
2021/03/09 HTML / CSS
实例说明为什么不要行内使用javascript
2014/04/18 Javascript
HTML5实现留言和回复页面样式
2015/07/22 Javascript
js实现跨域的几种方法汇总(图片ping、JSONP和CORS)
2015/10/25 Javascript
js流动式效果显示当前系统时间
2016/05/16 Javascript
JQuery 的跨域方法推荐_可跨任何网站
2016/05/18 Javascript
基于input框覆盖掉数字英文的实例讲解
2017/07/21 Javascript
小程序点赞收藏功能的实现代码示例
2018/09/07 Javascript
webpack 开发和生产并行设置的方法
2018/11/08 Javascript
Vue通过阿里云oss的url连接直接下载文件并修改文件名的方法
2020/12/25 Vue.js
python登录QQ邮箱发信的实现代码
2013/02/10 Python
Python中type的构造函数参数含义说明
2015/06/21 Python
浅析Python中MySQLdb的事务处理功能
2016/09/21 Python
Python3实现抓取javascript动态生成的html网页功能示例
2017/08/22 Python
flask中的wtforms使用方法
2018/07/21 Python
详解从Django Rest Framework响应中删除空字段
2019/01/11 Python
浅谈PYTHON 关于文件的操作
2019/03/19 Python
Python django框架应用中实现获取访问者ip地址示例
2019/05/17 Python
Keras中的两种模型:Sequential和Model用法
2020/06/27 Python
keras 自定义loss层+接受输入实例
2020/06/28 Python
使用Python pip怎么升级pip
2020/08/11 Python
python实现快速文件格式批量转换的方法
2020/10/16 Python
利用css3制作3D样式按钮实现代码
2013/03/18 HTML / CSS
美国最受欢迎的童装品牌之一:The Children’s Place
2016/07/23 全球购物
采购求职信
2014/03/17 职场文书
互联网创业计划书写作技巧攻略
2014/03/23 职场文书
合伙购房协议样本
2014/10/06 职场文书
2014年机关党委工作总结
2014/12/11 职场文书
公司前台接待岗位职责
2015/04/03 职场文书
【海涛教你打DOTA】黑鸟第一视角解说
2022/04/01 DOTA