折叠table中的tr
- code
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.chartTable{
width:100%;
margin-top:10px;
}
.chartTable th,.chartTable td{
text-align: center;
padding:10px 0;
}
.chartTable th{
background-color:#D7D7D7 ;
}
td.company{text-align: left;}
td.haschild .c_title{cursor: pointer;background: url(http://note.youdao.com/yws/public/resource/a5dec28b4c472b42d7126f3a389e3f28/xmlnote/531FC34716824BE5A6ABD0451F9FDBF0/WEBRESOURCE978aa3969c38110736f0c17a178b04b6/7204) no-repeat; background-size: 20px 20px;background-position: center left;}
td.isopen .c_title{cursor: pointer;background: url(http://note.youdao.com/yws/public/resource/a5dec28b4c472b42d7126f3a389e3f28/xmlnote/531FC34716824BE5A6ABD0451F9FDBF0/WEBRESOURCEed4cebea2ccd991c3265d5a7dd90d0e3/7205) no-repeat; background-size: 20px 20px;background-position: center left;}
.c_title{padding-left:20px;margin-top:0;margin-bottom:0;}
.haschild .c_icon{height:20px;width:20px;float:left}
.level_0 .company .c_title{margin-left:0; color:red;}
.level_1{display:none;}
.level_2{display:none;}
.level_3{display:none;}
.level_1 .company .c_title{margin-left:20px;color:blue;}
.level_2 .company .c_title{margin-left:40px;color:green;}
.level_3 .company .c_title{margin-left:60px;color:#ccc;}
</style>
</head>
<body>
<table class="chartTable" border="1" id="chartTable">
<tr>
<th rowspan="3">销售企业</th>
<th colspan="6">工业(吨)</th>
</tr>
<tr>
<th colspan="2">岩石</th>
<th colspan="2">岩石</th>
<th colspan="2">合计</th>
</tr>
<tr>
<th>数量</th>
<th>比重</th>
<th>数量</th>
<th>比重</th>
<th>数量</th>
<th>比重</th>
</tr>
<tr class="level_0">
<td class="company haschild"><p class="c_title">明华公司0</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_1">
<td class="company haschild"><p class="c_title"><p class="c_title">明华公司01</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_2">
<td class="company haschild"><p class="c_title"><p class="c_title">明华公司0101</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_3">
<td class="company"><p class="c_title"><p class="c_title">明华公司011111111101</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_1">
<td class="company"><p class="c_title"><p class="c_title">明华公司02</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class=" level_0">
<td class="company"><p class="c_title">明华公司1</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_0">
<td class="company haschild"><p class="c_title">明华公司0</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_1">
<td class="company haschild"><p class="c_title"><p class="c_title">明华公司01</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_2">
<td class="company"><p class="c_title"><p class="c_title">明华公司0101</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_1">
<td class="company"><p class="c_title"><p class="c_title">明华公司02</p></td>
<td>100</td>
<td>50%</td>
<td>100</td>
<td>50%</td>
<td>200</td>
<td>33.333%</td>
</tr>
<tr class="level_0">
<td>合计</td>
<td>300</td>
<td>50%</td>
<td>300</td>
<td>50%</td>
<td>600</td>
<td>100%</td>
</tr>
</table>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script>
$(".haschild").click(function(){
console.log(this);
var cls = $(this).parent().attr("class");
var childClassName = cls.substring(0,6)+(parseInt(cls.substring(6,7))+1);
var arr = $(this).parent().nextUntil('.'+cls);
if($(this).attr("class").indexOf("isopen")>=0){//关闭
$(this).removeClass("isopen");
$(arr).each(function(index,element){
$(element).find(".company").removeClass("isopen");
$(element).hide();
})
}else{//打开
$(this).addClass("isopen");
$(arr).each(function(index,element){
if($(element).attr("class")==childClassName){
$(element).show();
}
})
}
});
</script>
</body>
</html>
- effects
折叠table中的tr的更多相关文章
- jQuery遍历table中的tr td并获取td中的值
jQuery遍历table中的tr td并获取td中的值 $(function(){ $("#tableId tr").find("td").each(func ...
- [转]table中设置tr行间距
原文地址:https://blog.csdn.net/itmyhome1990/article/details/50475616 CSS border-collapse 属性设置表格的边框是否被合并为 ...
- table 中的tr 行点击 变换颜色背景
<style> table{border-collapse: collapse;border-spacing: 0; width: 100%;} table tr th,td{border ...
- table中设置tr行间距
CSS border-collapse 属性设置表格的边框是否被合并为一个单一的边框 值 描述 separate 默认值.边框会被分开.不会忽略 border-spacing 和 empty-cell ...
- table中tr间距的设定table合并单元格 colspan(跨列)和rowspan(跨行)
table中的tr的默认display:table-row,虽然可以修改为display:block但是就失去了tr特有的显示效果,如(td自动对齐): 并且在tr中对起设定padding是有用的,可 ...
- 《项目经验》--后台一般处理程序向前台JS文件传递JSON,JS解析JSON,将数据显示在界面--显示在DropDownList 或 显示在动态创建的table中
http://blog.csdn.net/mazhaojuan/article/details/8599167 先看一下我要实现的功能界面: 这篇文章主要介绍:后台一般处理程序把从数据库查找的数据,转 ...
- js的传值,table中tr的遍历,js中动态创建数组
1.这里关键是对页面中的传值,其次是动态的创建一个数组,用来存值 $(val).css("background-color", "rgb(251, 248, 233)&q ...
- vb.net 使用 Regex Replace 正则 替换 Html字串的table中tbody第一个tr下的td为th
本次示例效果如下: TextBox1中输入如下字符串: 12<table><tbody><tr><td>1<br/>11</td> ...
- table中tr使用toggle不好,选择换一张方式
好几次遇到的问题,都是table中tr后面有一部分内容要显示,也是用tr装的,但是需要点击该行,后面那个tr才显示出来.不过最好不要用toggle去写,因为着实效果不佳.故而建议换一种方式,也许最简单 ...
随机推荐
- [UnityUI]循环滑动列表
效果图: 使用的是UGUI和DOTween 当中比較关键的是循环滑动和层次排序: 1.循环滑动:这里先如果显示五张图片.分别标记为0,1,2,3,4,那么当向左滑动时,序列就变为1,2,3,4,0,这 ...
- 怎么成为合格的WEB前端开发工程师
web前端开发工程师目前来讲是一个热门职位,但是要成为一个合格的web前端开发工程师,需要掌握的知识可不少,零度就简单的为大家讲讲. 大致的来讲,web前端开发工程师需要掌握的知识有:HTML.CSS ...
- array01.js
//1.获取指定范围内的随机数 function getRadomNum(min,max){ return Math.floor(Math.random() * (max - min + 1)) + ...
- C# 开发 —— 数组类对象接口
数组类型是从抽象基类 Array 派生的引用类型,通过new运算符创建数组并将数组元素初始化为他们的默认值 一维数组 type[] arrayname; 数组的长度不是声明的一部分,而且数组必须在访问 ...
- 博弈论 SG函数(模板) HDU 1848 Fibonacci again and again
Fibonacci again and again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Jav ...
- 关于bat的变量赋值和解析机制
以下的演示涉及几个知识点: 1. 怎样把命令输出内容保存到变量中? 2. 多次改变变量值,为什么在for或是if的()中的无效,怎样变通? 3. bat的function实现? 见代码,和代码凝视 : ...
- VBA调试利器debug.print
作者:iamlaosong 百度一下.非常easy找到debug.print解释和使用介绍.事实上非常简单.就是将代码运行结果显示在"马上窗体"中,但不影响程序运行.VBA程序调试 ...
- ZOJ Problem Set - 3819Average Score
ZOJ Problem Set - 3819Average Score 题目链接 题目大意:给你两个班的的学生的分数(A,B班).A班有一个学生的分数没有给出. 如今要求你给出这个学生分数的上下限.使 ...
- 28.Node.js 函数和匿名函数
转自:http://www.runoob.com/nodejs/nodejs-module-system.html 在JavaScript中,一个函数可以作为另一个函数的参数.我们可以先定义一个函数, ...
- 深入理解Linux启动过程
深入理解Linux启动过程 本文详细分析了Linux桌面操作系统的启动过程,涉及到BIOS系统.LILO 和GRUB引导装载程序,以及bootsect.setup.vmlinux等映像文件 ...