el-table合并单元格

原效果:

这样看起来就很难受,用户体验极其不好,所以,我们把相同的单元格进行合并。

直接上代码

<el-table v-loading="loading" :data="AstationFxList":stripe="true":span-method="objectSpanMethod" //加入这个方法
</el-table>

在你查询出来所有数据的方法中

getList() {this.loading = true;listAstationFx(this.queryParams).then(response => {this.AstationFxList = response.rows;this.getSpanArr(this.AstationFxList); //把数据添加到这个方法中this.total = response.total;this.loading = false;});},

编写此 getSpanArr()方法

//获取合并配置明细getSpanArr(data) {// data就是我们从后台拿到的数据this.spanArr = [];this.pos = 0;this.spanArrdfytsl = [];//合并电费用途统计数量this.posdfytsl = 0;//合并电费用途统计数量索引for (var i = 0; i < data.length; i++) {if (i === 0) {//设置table表格行号、设置合并参数,以便相同参数合并this.spanArr.push(1);this.pos = 0;} else {// 判断当前元素与上一个元素是否相同if (data[i].city === data[i - 1].city) {this.spanArr[this.pos] += 1;this.spanArr.push(0);}else{this.spanArr.push(1);this.pos = i;}if (data[i].name=== data[i - 1].name) {this.spanArr[this.pos] += 1;this.spanArr.push(0);}else{this.spanArr.push(1);this.pos = i;}//如果我们合并的是多列,那么就继续if()else,但是要将数据添加的数组要重新声明。if (data[i].sumdfyfv === data[i - 1].sumdfyfv) {this.spanArrdfytsl[this.posdfytsl] += 1;this.spanArrdfytsl.push(0);}else{this.spanArrdfytsl.push(1);this.posdfytsl = i;}}}},

最后合并

//合并单元格objectSpanMethod({row, column, rowIndex, columnIndex}) {if(columnIndex ===0 ){const _row = this.spanArr[rowIndex];const _col = _row > 0 ? 1 : 0;return {rowspan: _row,colspan: _col}}if(columnIndex === 1){const _row = this.spanArrdfytsl[rowIndex];const _col = _row > 0 ? 1 : 0;return {rowspan: _row,colspan: _col}}},

最后效果图

此文章是为了记录遇到的问题,方便以后的查看。

el-table合并单元格相关推荐

  1. Table合并单元格,表格居中,内容居中显示

    例如:新建一张四行四列的表格,第一行的四列合并,第二.三.四行的第一列合并在一起居中显示 <%@ page language="java" contentType=" ...

  2. element plus的table合并单元格

    element的table合并单元格 就element+中的el-table中的span-method方法的使用和遇到的一些问题 如果想要将后一列挨着的单元格合并,return 1,2,但是得将后一个 ...

  3. vue中用table_Vue中table合并单元格用法

    地名 结果 人名 性别 {{item.name}} 已完成 未完成 {{item.groups[0].name}} {{item.groups[0].sex}} {{item.groups[son]. ...

  4. js实现 table合并单元格

    ** table合并单元格 function uniteTdCells(tableId){var table = document.getElementById(tableId);for (let i ...

  5. vue原生table合并单元格

    vue原生table合并单元格 <table border="1"><thead><tr><th>学习</th>< ...

  6. table合并单元格_制作课程表3——合并单元格

    由于浏览器兼容问题,. 以及 很少被使用, 所以我们将课程表依然使用tr.td元素,结合样式实现出前面案例中效果 原来代码: 课程1 课程2 课程3 课程4 课程5 课程1 课程2 课程3 课程4 课 ...

  7. table合并单元格宽度自适应

    table中合并单元格导致的css样式不同处理方式: 1.每行都拆成一个table. 2.多设置几个单元格的宽度(自适应失效.第一列都设置宽度也有可能失效).

  8. table合并单元格_element ui el-table 合并单元格

    element ui table 的合并单元格 或者 测试 vue 文件 <template><div><el-table:data="tableData&qu ...

  9. bootstrap table合并单元格mergeCell

    //对应第一个合并的单元格 mergeCells = function(data, fieldName, colspan, target) {         var sort = Array(); ...

  10. table合并单元格

    遇到这种设计,记录一下 <el-table:data="tableDataNew":span-method="objectSpanMethod"borde ...

最新文章

  1. 无人出租今起免费坐,只恨不是长沙人
  2. Spring入门详细教程(一)
  3. 大工计算机基础在线作业答案,大工11春《计算机文化基础》在线作业及答案(国外英文资料).doc...
  4. Java修炼之路——基础篇——Java集合类详解2
  5. C# 如何提取SaveFileDialog的保存路径?
  6. linux 内核定时器精度_高精度时钟工作机制简介
  7. VS Code 翻译插件
  8. 【C++笔记】字符串、向量和数组
  9. 华为虚拟home键关闭_华为手机音量忽大忽小,不妨打开这3个开关调整,音量变大变清晰...
  10. C语言面试题---结构体
  11. C语言小游戏-寻宝(幸运之星)
  12. Golang学习日志 ━━ 调用系统默认浏览器打开指定链接(全平台)
  13. 除了AI,你不该忽视Python在这4大领域的应用!
  14. token的颁发、保存与携带
  15. E/WindowManager: android.view.WindowLeaked: Activity com.xxx.xxx.xxx
  16. 中国南极科考队两支内陆小分队顺利“会师”
  17. 计算机硬件倒计时牌,自制数码管中考倒计时牌
  18. 嵌入式开发板硬件操作入门学习9——集成电路芯片手册术语词汇表(中英文对照)
  19. Express项目中用javascript实现连接mysql数据库
  20. 5g空分复用技术_首席科学家向际鹰:空分复用技术让中兴通讯5G领先一步

热门文章

  1. 范登堡(van den berg)CPT使用记录
  2. NAS存储中如何启用多媒体服务器?
  3. 输入字符串,输出字符串中出现次数最多的字母及其出现次数。如果有多个字母出现次数一样,则按字符从小到大顺序输出字母及其出现次数。
  4. win7任务栏计算机怎么显示桌面,在win7任务栏添加一个显示桌面的图标按钮的方法...
  5. YANG模型中<rpc-error>的定义
  6. python破解md5_python怎么使用md5加密解密
  7. 解决vs2019 16.5版本中 编译虚幻4c++ bool值报错问题
  8. 阿里自然语言处理部总监分享:NLP技术的应用及思考
  9. 【半导体物理】笔记 柴常春 西安电子科技大学 更新ing...
  10. saber与matlab,saber与matlab的比较 (1)