el-table花式操作,含合并求和、双表齐动 等等

news/2024/12/2 16:03:39/

1.指定行单元格,合并求和

el-table,提供的行合并,我是没找到单元格可以合并求和的,就用了操作document来 合并单元格,大家可以参考参考

在这里插入图片描述
上面这张表,第1 2 两行,数据是一样的,3 4 两行是一样的,只是2 4 是每个月所有人数据合并求和了下

/**指定第几行从第几个开始,每几个合并单元格,并求和* rowIndexArr    要哪几行合并,数组* startIndex     从第几个开始(一般排除与求和无关的 首列)* everyFew       每多少个求和并合并单元格* ref            table的ref值(不填写,就默认本页面是单表)*/tableRowMerge(rowIndexArr, startIndex, everyFew, ref) {var table;if (ref) {table = this.$refs[ref].$el;} else {table = document.querySelector(".el-table");}// 清除合并单元格和隐藏的单元格var mergedCells = table.querySelectorAll(".merged-cell");mergedCells.forEach(function (cell) {cell.parentNode.removeChild(cell);});rowIndexArr.forEach((item) => {let row = table.querySelectorAll(".el-table__body-wrapper tbody tr")[item];let cells = row.querySelectorAll("td");for (let j = startIndex; j < cells.length; j += everyFew) {let sum = 0;for (let k = j; k < j + everyFew && k < cells.length; k++) {sum += parseFloat(cells[k].innerText);cells[k].style.display = "none"; // 隐藏参与求和的单元格}let mergedCell = document.createElement("td");mergedCell.innerText = sum;mergedCell.colSpan = everyFew; // 合并everyFew个单元格mergedCell.classList.add("merged-cell");mergedCell.style.textAlign = "center";cells[j].insertAdjacentElement("afterend", mergedCell); // 插入合并后的单元格}});},

使用方法,我上面是24 两行,从第二列开始,每四个合并求个,所以代码是

  updated() {this.tableRowMerge([1, 3], 1, 4, "myTable");},

2.双表一起滑动

滑动条,多表同步
在这里插入图片描述

//methods 里面,监听滑动
listenerScroll() {this.dom2.addEventListener('scroll', () => {// 横滚this.dom1.scrollLeft = this.dom2.scrollLeft// 竖滚this.dom1.scrollTop = this.dom2.scrollTop})
}//然后数据变化就给他同步滑动
updated() {this.dom1 = this.$refs.table.bodyWrapper;this.dom2 = this.$refs.table2.bodyWrapper;const table1 = this.$refs.table;// 隐藏水平滑动条table1.maxHeight = 'none'; // 或者设置为其他自定义高度table1.layout.scrollX = false;this.listenerScroll();
},

3.分页下,给最后一页给上总计

在这里插入图片描述
这就可以用上双表了,配合上面2,可以去掉其中一个水平条

<div class="table-container" style="width: 100%; overflow-x: auto;"><el-table :data="table" ref="table"></el-table><div v-if="isLastPage && isLastRow"><el-table :data="table2" ref="table2"></el-table></div>
</div>
//属性计算,计算是不是最后一页,是不是是有数据
computed: {isLastPage() {return this.table.page === Math.ceil(this.table.totalCount / this.table.rows);},isLastRow() {return this.table.data.length > 0;}
},

http://www.ppmy.cn/news/663070.html

相关文章

基于jsp+servlet+oracle的网上书店

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:Java韩立 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于jsp+servlet+oracle的网上书店,java项目。 eclipse和…

飞拓智养电动轮椅怎么样?

飞拓智养电动轮椅,十年出口经验 因为专业所以执着,因为专业所以信赖 懂你所想,覆盖所有应用场景。 给你所要,做你身边的电动轮椅专家。 飞拓智养电动轮椅 精于品质。专注细节,追求极致。 1、绿色、安全,采用最先进的电机和电磁刹车技术 电池采用绿色环保、精致轻巧的锂电池…

电动轮椅的设计

摘要 第一个轮椅模型早在18世纪就已经发展了&#xff0c;但自20世纪中叶以来&#xff0c;这一领域开始了快速发展。从那时起&#xff0c;设计了多种型号&#xff0c;扩展到广泛的产品范围。该项目涉及设计一种符合人体工程学设计的电动轮椅&#xff0c;供印度老年人在家使用。…

大文字搜索怎么处理

面试官&#xff1a;大字段内容搜索怎么处理&#xff1f; 你&#xff1a; 这个。。。 在处理大字段内容搜索时&#xff0c;可以考虑以下几种方法&#xff1a; 分词索引&#xff1a;对大字段内容进行分词&#xff0c;将分词结果建立索引。这样可以通过关键词匹配来进行搜索。常见…

浅析轨道交通变电站运维安全及设备维护

摘要&#xff1a;加强轨道交通变电运维安全&#xff0c;做好设备维护管理工作&#xff0c;则需要建立智能巡视平台&#xff0c;完善变电网络结构&#xff0c;不断提高供电系统的安全质量&#xff0c;从而能确保变电设备的安全运行&#xff0c;同时也是保证列车安全、快速、有用…

dnn汉化

装好了DNN,要装汉化包了&#xff0e;在网上找了段视频看&#xff0c;才弄清楚了大概步骤&#xff0e;总体来讲有以下几步&#xff1a; &#xff11;、用host用户登录&#xff0c;在“站点管理”&#xff0d;》“语言管理”中点击“上传语言包“ 上传语言包&#xff0c;语言包是…

bluez sdp

//生成一个SDP RECORD, 以Attribute ID为单位! static sdp_record_t *a2dp_record(uint8_t type) {sdp_list_t *svclass_id, *pfseq, *apseq, *root;sdp_record_t *record;record sdp_record_alloc();//PUBLIC_BROWSE_GROUP 1002//AUDIO_SOURCE_SVCLASS_ID 110A//AU…

dnsng

dns什么最关键最重要&#xff0c;当然是速度&#xff01;要把最快速度的链路给客户&#xff0c;让客户走快的访问服务器。 二代dns只是根据静态路由表机械的返回ip,电信客户访问就走电信&#xff0c;网通的走网通&#xff0c;不管实际链路速度。 三代dns有测速点的概念&#xf…