[jquery]折叠指定条件的表格

最近在做财务报表时候,一些表格要做特定折叠效果

这里通过2个自定义属性来对表格之间的属性作关联

date-head和date-num,输出表格时候,可以按照这2个自定义属性给某些带父子层级关系的内容指定关联关系

再通过jquery获取这些具有相当关联关系的表格作出折叠效果

效果图

先上jquery

$(document).ready(function(e) {

    $(".table").find(".head").each(function() {
        $(this).find("td:nth-child(2)").click(function(){
            var head = $(this).parents("tr").attr("date-head");
            $(".table").find(".close").each(function(){
                var num = $(this).attr("date-num");
                if(head == num){
                    if($(this).css("display")=="none"){
                        $(this).show();
                    }else{
                        $(this).hide();
                    }
                }
            });

        })
    });

});

css代码

body{background-color:#e0e0e0;}
.main{width:600px; min-height:300px; border: 10px solid #666; margin:0 auto; background-color:#FFF; border-radius:3px; overflow-y:auto; padding:0; margin-bottom:20px;}
.table{width:100%; padding:0; margin:0;}
.table tr td{border:1px solid #ccc; width:33.33%;}
.table tr:nth-child(1) td,.table tr:nth-child(4) td,.table tr:nth-child(7) td{background-color:#FCF;}

html代码

<div class="main">

    <table class="table" border="0" cellspacing="1" cellpadding="0" >
        <thead>
          <tr>
            <th class="text-center">序号</th>
            <th class="text-center">菜单名称</th>
            <th class="text-center">操作</th>
          </tr>
        </thead>
        <tbody>
          <tr class="head" date-head="1">
            <td>1</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close" date-num="1" style="display:none">
            <td>2</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close" date-num="1" style="display:none">
            <td>3</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="head" date-head="2">
            <td>4</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close" date-num="2" style="display:none">
            <td>5</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close" date-num="2" style="display:none">
            <td>6</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="head"  date-head="3">
            <td>7</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close" date-num="3" style="display:none">
            <td>8</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close" date-num="3" style="display:none">
            <td>9</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close">
            <td>10</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close">
            <td>11</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
          <tr class="close">
            <td>12</td>
            <td>销售管理</td>
            <td>下移</td>
          </tr>
        </tbody>
      </table>
</div>
时间: 2024-08-05 19:57:50

[jquery]折叠指定条件的表格的相关文章

JQuery EasyUI DataGrid根据条件设置表格行样式(背景色)

1.javascript定义函数返回样式 <script type="text/javascript"> //根据条件设置表格行背景颜色 function setRowBgColor(index, row) { if (row.ERROR_INFO != null && row.ERROR_INFO != "") { return 'background-color:yellow;color:black;'; } } </scrip

第二百二十八节,jQuery EasyUI,TreeGrid(树形表格)组件

jQuery EasyUI,TreeGrid(树形表格)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 TreeGrid(树形表格)组件的使用方法,这个组件依赖于 DataGrid(数据表格)组件. 一.加载方式 建立一个 JSON 文件 [ { "id": 1, "name": "系统管理", "date": "2015-05-10", &quo

jQuery整理笔记九----功能性表格开发

示例中用到的一些图片.插件.样式文件等下载地址:点我进入下载 过去在开发过程中关于table方面的jquery应用仅仅是局限于使用jquery操作table增加一行.删除一列等等操作.今天整理的跟过去用的不一样. 1.uiTableFilter uiTableFilter是一款表格数据行过滤插件,使用很简单,具体用法如下: $.uiTableFilter(table,phrase)  该函数包含两个参数,其中第一个参数为jQuery对象,即为jQuery方法匹配的表格,或者也可以是jQuery匹

利用jquery给指定的table动态添加一行、删除一行

$("#mytable tr").find("td:nth-child(1)") 1表示获取每行的第一列$("#mytable tr").find("td:nth-child(3)") 3表示获取每行的第三列 今天在项目中,刚好用到给指定的table添加一行.删除一行,就直接找google,搜出来的东西不尽如人意,不是功能不好就是千篇一律,简直浪费时间还不讨好,于是乎就自己动手封装个,现就把代码分享出来,避免大伙重复造轮子,如

jquery实现多条件筛选特效代码分享

本文实例讲述了jquery实现多条件筛选特效.分享给大家供大家参考.具体如下:jquery实现的多条件搜索表单带日期选择表格表单效果源码,是一段实现了多个条件筛选搜索的特效代码,多条件拥有时间.地点.酒店位置及酒店名称等选项,同时在时间的输入表格中拥有时间选择功能,是一款非常实用的特效代码,值得大家学习.运行效果图:                        -------------------查看效果 下载源码------------------- Javashop商城系统,专业_省心

在MarkDown文档中添加jQuery折叠面板

折腾Hexo博客,做了个软件整理收集页,在首席前端顾问蔡老板的指点下,终于实现了文章中使用折叠面板的功能,现记录如下. 因为想整站都有这样的效果,所以直接集成到使用的主题中,本站使用的是maupassant主题,其他主题应该大同小异,仅供参考. 改造主题 新建定义class或id的js,如我新建了个accordion.js,里面的内容如下 123 $(function() { $( ".accordion" ).accordion();}); 如果用<div id=accordi

oracle 统计指定条件下所有表的行数

今天 需要统计下指定用户下的所有表的行数,于是采用了oracle 内置视图: select table_name,num_rows  from dba_tables where owner = 'USERNAME';  或 select table_name,num_rows from user_all_tables ; 可是统计结果发现,有的表的统计数量和实际数量有差异,因此,直接自己写了个统计指定条件下表的记录的sql: --创建一个表用于存储计算结果 create table t_temp

小谷实战Jquery(二)--可以编辑的表格

今天实现的是一个表格的例子,通过获取表格的奇数行,设置背景色属性,使得奇偶行背景色不同.这个表格可以在单击时编辑,回车即更改为新输入的内容;ESC还原最初的文本.表格的实现思路很清晰,只是在实现的过程中会出现一些小bug.通过jQuery函数就可以一一解决. 下面看下HTML代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD

示例-创建表格-指定行列&amp;删除表格的行和列

<body> <script type="text/javascript"> /* *上面的方法和你麻烦.*既然操作的是表格,*那么最方便的方式就是使用表格节点对象的方法.* *表格是由行组成.表格节点对象中insertRow方法就完成了创建行并添加的动作.* *行是有单元格组成.通过tr节点对象的insertCell来完成.*/function crtTable(){ var oTabNode = document.createElement("ta