zoukankan      html  css  js  c++  java
  • jQuery学习之路(6)- 简单的表格应用

    ▓▓▓▓▓▓ 大致介绍

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

    ▓▓▓▓▓▓ 表格变色

        基本的结构:

     1     <table>
     2         <thead>
     3             <tr><th>姓名</th><th>性别</th><th>暂住地</th></tr>
     4         </thead>
     5         <tbody>
     6             <tr><td>张三</td><td></td><td>杭州</td></tr>
     7             <tr><td>王五</td><td></td><td>江苏</td></tr>
     8             <tr><td>李斯</td><td></td><td>北京</td></tr>
     9             <tr><td>赵六</td><td></td><td>兰州</td></tr>
    10             <tr><td>往往</td><td></td><td>酒泉</td></tr>
    11             <tr><td>李师傅</td><td></td><td>东京</td></tr>
    12         </tbody>
    13     </table>

        1、普通的隔行变色

          首先定义两个样式

    1     .even{
    2         background: #FFF38F;
    3     }
    4     .odd{
    5         background: #FFFFEE;
    6     }

        

        添加变色

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

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

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

    1     $('tbody>tr').click(function(){
    2         $(this)
    3             .addClass('selected')
    4             .siblings().removeClass('selected')
    5             .end()
    6             .find(':radio').attr('checked',true);
    7     });

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

    1     $('tbody>tr').click(function(){
    2         if($(this).hasClass('selected')){
    3             $(this).removeClass('selected')
    4                    .find(':checkbox').attr('checked',false);
    5         }else{
    6             $(this).addClass('selected')
    7                    .find(':checkbox').attr('checked',true);
    8         }
    9     });

    ▓▓▓▓▓▓ 表格展开关闭

        基本结构:

     1     <table>
     2         <thead>
     3             <tr><th></th><th>姓名</th><th>性别</th><th>暂住地</th></tr>
     4         </thead>
     5         <tbody>
     6             <tr class="parent" id="row_01"><td colspan="3">前台设计组</td></tr>
     7             <tr class="child_row_01"><td></td><td>张三</td><td></td><td>杭州</td></tr>
     8             <tr class="child_row_01"><td></td><td>王五</td><td></td><td>江苏</td></tr>
     9 
    10             <tr class="parent" id="row_02"><td colspan="3">前台开发组</td></tr>
    11             <tr class="child_row_02"><td></td><td>李斯</td><td></td><td>北京</td></tr>
    12             <tr class="child_row_02"><td></td><td>赵六</td><td></td><td>兰州</td></tr>
    13 
    14             <tr class="parent" id="row_03"><td colspan="3">后台开发组</td></tr>
    15             <tr class="child_row_03"><td></td><td>往往</td><td></td><td>酒泉</td></tr>
    16             <tr class="child_row_03"><td></td><td>李师傅</td><td></td><td>东京</td></tr>
    17         </tbody>
    18     </table>

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

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

    ▓▓▓▓▓▓ 表格内容筛选

        基本结构:

     1     <table>
     2         <thead>
     3             <tr><th></th><th>姓名</th><th>性别</th><th>暂住地</th></tr>
     4         </thead>
     5         <tbody>
     6             <tr class="parent" id="row_01"><td colspan="3">前台设计组</td></tr>
     7             <tr class="child_row_01"><td></td><td>张三</td><td></td><td>杭州</td></tr>
     8             <tr class="child_row_01"><td></td><td>王五</td><td></td><td>江苏</td></tr>
     9 
    10             <tr class="parent" id="row_02"><td colspan="3">前台开发组</td></tr>
    11             <tr class="child_row_02"><td></td><td>李斯</td><td></td><td>北京</td></tr>
    12             <tr class="child_row_02"><td></td><td>赵六</td><td></td><td>兰州</td></tr>
    13 
    14             <tr class="parent" id="row_03"><td colspan="3">后台开发组</td></tr>
    15             <tr class="child_row_03"><td></td><td>往往</td><td></td><td>酒泉</td></tr>
    16             <tr class="child_row_03"><td></td><td>李师傅</td><td></td><td>东京</td></tr>
    17         </tbody>
    18     </table>
    19     <input type="text" id="filterName" />

        添加事件

    1     $('#filterName').keyup(function(){
    2         $('table tbody tr').hide().filter(":contains(' "+($(this).val())+" ' )").show();
    3     });
  • 相关阅读:
    [AX]AX2012开发新特性outer join中使用QueryFilter
    [AX]AX2012开发新特性表继承
    docker环境安装
    poj 3469
    poj 1187
    poj 1159
    poj 2135
    poj 1273
    poj 1458
    poj 1141
  • 原文地址:https://www.cnblogs.com/qqandfqr/p/6186163.html
Copyright © 2011-2022 走看看