详解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 相关文章推荐
js隐藏与显示回到顶部按钮及window.onscroll事件应用
Jan 25 Javascript
javascript替换已有元素replaceChild()使用介绍
Apr 03 Javascript
JS实现可拖曳、可关闭的弹窗效果
Sep 26 Javascript
JavaScript实现cookie的写入、读取、删除功能
Nov 05 Javascript
jquery checkbox无法用attr()二次勾选问题的解决方法
Jul 22 Javascript
使用JavaScript获取URL中的参数(两种方法)
Nov 16 Javascript
jquery仿苹果的时间/日期选择效果
Mar 08 Javascript
JS实现为动态添加的元素增加事件功能示例【基于事件委托】
Mar 21 Javascript
vue计算属性及使用详解
Apr 02 Javascript
Vue表单demo v-model双向绑定问题
Jun 29 Javascript
微信小程序实现滑动翻页效果(完整代码)
Dec 06 Javascript
iSlider手机端图片滑动切换插件使用详解
Dec 24 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
php数组函数序列之krsort()- 对数组的元素键名进行降序排序,保持索引关系
2011/11/02 PHP
thinkphp使用phpmailer发送邮件的方法
2014/11/24 PHP
教你在header中隐藏php的版本信息
2016/08/10 PHP
PHP MYSQL简易交互式站点开发
2016/12/27 PHP
Jquery下的26个实用小技巧(jQuery tips, tricks &amp; solutions)
2010/03/01 Javascript
关于JavaScript中var声明变量作用域的推断
2010/12/16 Javascript
jQuery cdn使用介绍
2013/05/08 Javascript
js将当前时间格式转换成时间搓(自写)
2013/09/26 Javascript
jQuery的缓存机制浅析
2014/06/07 Javascript
JS设置cookie、读取cookie、删除cookie
2015/04/17 Javascript
js脚本分页代码分享(7种样式)
2015/08/19 Javascript
解决JS无法调用Controller问题的方法
2015/12/31 Javascript
莱鸟介绍javascript onclick事件
2016/01/06 Javascript
node网页分段渲染详解
2016/09/05 Javascript
第一次接触神奇的Bootstrap
2016/10/14 Javascript
jQuery实现表格元素动态创建功能
2017/01/09 Javascript
MUI 解决动态列表页图片懒加载再次加载不成功的bug问题
2017/04/13 Javascript
原生JavaScript实现的简单省市县三级联动功能示例
2017/05/27 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
[54:10]完美世界DOTA2联赛PWL S2 Magma vs FTD 第二场 11.29
2020/12/03 DOTA
一个基于flask的web应用诞生(1)
2017/04/11 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
2018/12/05 Python
对python for 文件指定行读写操作详解
2018/12/29 Python
python实现人工智能Ai抠图功能
2019/09/05 Python
Python爬虫库BeautifulSoup的介绍与简单使用实例
2020/01/25 Python
Python数据可视化实现多种图例代码详解
2020/07/14 Python
css3闪亮进度条效果实现思路及代码
2013/04/17 HTML / CSS
HTML5中的Web Notification桌面通知功能的实现方法
2019/07/29 HTML / CSS
分布式数据库需要考虑哪些问题
2013/12/08 面试题
高一数学教学反思
2014/02/07 职场文书
党员年终个人总结
2015/02/14 职场文书
简历中自我评价范文
2015/03/11 职场文书
应聘教师求职信范文
2015/03/20 职场文书
2016大学生形势与政策心得体会
2016/01/12 职场文书
mysql备份策略的实现(全量备份+增量备份)
2021/07/07 MySQL
Python学习之os包使用教程详解
2022/03/21 Python