js 表格合并
1.合并
function autoRowSpan(tbid, row, col) {
var tb = document.getElementById(tbid);
var lastValue = "";
var value = "";
var pos = 1;
for (var i = row; i < tb.rows.length; i++) {
value = tb.rows[i].cells[col].innerText;
if (lastValue == value) {
tb.rows[i].deleteCell(col);
tb.rows[i - pos].cells[col].rowSpan = tb.rows[i - pos].cells[col].rowSpan + 1;
pos++;
} else {
lastValue = value;
pos = 1;
}
}
}
2.根据上一例合并记录合并下一列
function autoRowSpan2(tbid, row, col) {
var tb = document.getElementById(tbid);
var lastValue = "";
var value = "";
var pos = 1;
for (var i = row; i < tb.rows.length; i++) {
var rospan = tb.rows[i].cells[0].getAttribute('rowSpan');
if (rospan > 1) {
lastValue = tb.rows[i].cells[col].innerText;
var index = 1;
for (var j = i + 1; j < tb.rows.length; j++) {
if (index == rospan) break;
value = tb.rows[j].cells[col - 1].innerText;
//alert(value);
if (lastValue == value) {
tb.rows[j].deleteCell(col - 1);
index++;
} else {
lastValue = value;
}
}
tb.rows[i].cells[col].rowSpan = index;
//tb.rows[i].cells[col].rowSpan = index;
}
}
}
function merge() {
var totalRow = $("#table_ZC tbody").find("tr").length;
var totalCol = $("#table_ZC tbody").find("tr").eq(0).find("td").length;
for (var col = totalCol - 7; col >= 0; col--) {
spanNum = 1;
startCell = $("#table_ZC tbody").find("tr").eq(totalRow - 1).find("td").eq(col);
for (var row = totalRow - 1; row >= 1; row--) {
targetCell = $("#table_ZC tbody").find("tr").eq(row - 1).find("td").eq(col);
if (startCell.text() == targetCell.text() && startCell.text() != "") {
spanNum++;
targetCell.attr("rowSpan", spanNum);
startCell.remove();
} else {
spanNum = 1;
}
startCell = targetCell;
}
}
}
3.合并table 的第一个单元格
function merge() {
var totalRow = $(".jjtable tbody").find("tr").length;
spanNum = 1;
startCell = $(".jjtable tbody").find("tr").eq(totalRow - 1).find("td").eq(0);
for (var row = totalRow - 1; row >= 1; row--) {
targetCell = $(".jjtable tbody").find("tr").eq(row - 1).find("td").eq(0);
if (startCell.text() == targetCell.text() && startCell.text() != "") {
spanNum++;
targetCell.attr("rowSpan", spanNum);
startCell.remove();
} else {
spanNum = 1;
}
startCell = targetCell;
}
}
js 表格合并的更多相关文章
- js 表格合并单元格
5列 根据需要可添加 或 删除 strOneTemp strTwoTemp strThreeTemp strFourTemp strFiveTemp //合并单元格 this.mergeC ...
- jquery操作表格 合并单元格
jquery操作table,合并单元格,合并相同的行 合并的方法 $("#tableid").mergeCell({ cols:[X,X] ///参数为要合并的列}) /** * ...
- element-ui 使用span-method表格合并后hover样式的处理
在使用element表格合并后,发现鼠标只有移入第一个合并行时,合并的部分会高亮,移入其他行,不会高亮,这样效果看起来不是很好.查看了文档也没有直接的解决方法,就通过现有的方法处理了一下,解决了hov ...
- 关于表格合并span-method方法的补充(表格数据由后台动态返回)
之前写了一些关于element-ui表格合并的方法,不过用的数据都是确定的数据(死数据),但是很多时候我们的数据都是通过后台获得的,数据不稳定,这个时候使用表格合并就需要先处理一下数据,先看一下一种很 ...
- js文件合并,压缩,缓存,延迟加载
做web前段也有一段时间了,对于web中js文件的加载有些体会想跟大家一起分享一下. 1.首先说说js文件的合并和压缩吧 为了便于集中式管理js的合并和压缩我们创建一个Js.ashx文件来专门处理合并 ...
- CSS 和 JS 文件合并工具
写 CSS 和 JavaScript 的时候, 我们会遇到一个两难的局面: 要么将代码写在一个大文件, 要么将代码分成多个文件. 前者导致文件难以管理, 代码复用性差, 后者则因为需要在载入多个文件令 ...
- gulp 之一 安装及简单CSS,JS文件合并压缩
最近研究了一下gulp构建工具,发现使用起来比grunt顺手一些.(个人感受),以下是grunt和gulp构建方式和原理: grunt 基于文件方式构建,会把文件先写到临时目录下,然后进行读文件,修改 ...
- QTableWidget表格合并若干问题及解决方法
Qt提供 QTableWidget作为表格的类以实现表格的基本功能,表格中所装载的每一个单元格由类QTableWidgetItem提供.这是基于表格实现 Qt提供的一个基础类,若想实现定制表格和单元格 ...
- element-ui表格合并span-method
先看一下合并后的样式,表格第二行,二三四列合并 官网给我们提供了span-method的方法可以进行表格合并,有4个参数返回:row,column,rowIndex,columnIndex;row和c ...
随机推荐
- [NOIP2019模拟赛][AT2381] Nuske vs Phantom Thnook
题目链接 评测姬好快啊(港记号?)暴力40pts变成60pts 因为题目说了保证蓝色点两两之间只有一条路径,所以肯定组成了一棵树,而对于每次询问的x1,y1,x2,y2的子矩阵中就存在着一个森林 不难 ...
- React require(“history”).createBrowserHistory` instead of `require(“history/createBrowserHistory”)
看见bug惊讶,代码中并没有require("history/createBrowserHistory") //原有代码为 import createBrowserHistory ...
- windows10 vs2019 + opencv 3.4.7环境搭建
windows vs2019 + opencv 3.4.7环境搭建 安装Opencv 3.4.7 下载 Opencv 第1步 进入 opencv releases 页面,点击 "Window ...
- odoo 下 get_object_reference 函数
get_object_reference是 ir.model.data 模块中下的一个函数 该函数通过调用ir.model.data 模块中另外一个函数 xmlid_lookup 返回结果 def g ...
- thinkphp 组合查询
组合查询的主体还是采用数组方式查询,只是加入了一些特殊的查询支持,包括字符串模式查询(_string).复合查询(_complex).请求字符串查询(_query),混合查询中的特殊查询每次查询只能定 ...
- ireport 无法打开问题
打开时闪退 ,是因为jdk版本过高的原因:https://blog.csdn.net/aust_glj/article/details/52291240 相关软件下载地址: JasperReports ...
- Linux常见问题解答--如何修复“tar:Exiting with failure status due to previous errors”
问题: 当我用tar命令来创建一个压缩文件时,总在执行过程中失败,并且抛出一个错误说明"tar:由于前一个错误导致失败退出"("Exiting with failure ...
- vue 实现邮戳边缘
效果: vue: <template> <div class="couponItem"> <div class="itemLeft" ...
- [Bzoj3696]化合物【暴力+树形Dp】
Online Judge:Bzoj3696 Label:暴力,树形Dp 题目描述 首长NOI惨跪,于是去念文化课了.现在,他面对一道化学题. 这题的来源是因为在一个奇怪的学校两个化竞党在玩一个奇怪的博 ...
- 初学C#的简单编程题合集(更新)
一 编写一个控制台应用程序,要求完成下列功能. 1) 接收一个整数 n. 2) 如果接收的值 n 为正数,输出 1 到 n 间的全部整数. 3) 如果接收的值为负值,用 break 或者 ...