element 动态合并表格的步骤


Posted in Javascript onDecember 31, 2020

前言

element 官方的例子太简单了,不满足实际的需求

数据肯定是动态的,合并的行数,列数都是动态的,该如何知道每一行的合并数呢

需求

动态合并表格,数据来源于数据库

正文

一开始,我的数据源是单独的数组,表格数据合并了几个数据,

我根据各个数组的长度,来决定每一行的合并数

结果:有些数据是正常的,但有些又合并出错了。计算的方式不对

element 动态合并表格的步骤

尝试二 

dataPretreatment() 用这个方法 计算出每一行的行数

dataPretreatment(){  //表格数据列合并预处理,生成一个与行数相同的数组记录每一行设置的合并数
    // 如果是第一条记录(索引为0),向数组中加入1,并设置索引位置;
    // 如果不是第一条记录,则判断它与前一条记录是否相等,如果相等,
    // 则向mergingRows中添入元素0,并将前一位元素+1,表示合并行数+1,
    // 以此往复,得到所有行的合并数,0即表示该行不显示。
     for(let i = 0; i < this.tableData.length; i ++){ // tabledata 表格数据源
       if(i === 0){
         this.mergingRows.push(1)
         this.mergingPos = 0
       }else {
        if(this.tableData[i].name === this.tableData[i - 1].name) { //哪些数据是要合并的 合并的条件是什么
         
          this.mergingRows[this.mergingPos] +=1
          this.mergingRows.push(0)
        }else {
          this.mergingRows.push(1)
          this.mergingPos = i
        }
       }
     }
   },

用这个方法 mergeColumn()绑定到官方提供的span-method 方法上面

element 动态合并表格的步骤

mergeColumn({row, column, rowIndex, columnIndex}){
     if (columnIndex === 0) { //第一列
       const _row = this.mergingRows[rowIndex];
       const _col = _row>0 ? 1 : 0;
       return {
        rowspan: _row,
        colspan: _col
       }
     }
    // if(columnIndex === 1){ //第二列 每一行的条件可以不一样 这样就是动态多样合并表格啦
    //   const _row = this.mergingRows[rowIndex];
    //   const _col = _row>0 ? 1 : 0;
    //   return {
    //     rowspan: _row,
    //     colspan: _col
    //   }
    // }   
   },

展示结果

element 动态合并表格的步骤

注意注意

      1. 第一列 计算出要合并的行数

element 动态合并表格的步骤

2.发现鼠标在表格移动  mergeColumn()这个方法一直在调用

Fannie式总结

一定要高清每一行的合并行数,按列来区分的

切记切记哦!不然表格合并出来的 跟你想象的不一样

以上就是element 动态合并表格的步骤的详细内容,更多关于element 动态合并表格的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
jquery下操作HTML控件的实现代码
Jan 12 Javascript
Jquery AJAX 用于计算点击率(统计)
Jun 30 Javascript
jQuery Ajax异步处理Json数据详解
Nov 05 Javascript
js设置文本框中焦点位置在最后的示例代码(简单实用)
Mar 04 Javascript
jquery单行文字向上滚动效果示例
Mar 06 Javascript
JavaScript中document对象使用详解
Jan 06 Javascript
jQuery实现定时读取分析xml文件的方法
Jul 16 Javascript
jQuery实现伪分页的方法分享
Feb 17 Javascript
jQuery 选择同时包含两个class的元素的实现方法
Jun 01 Javascript
Vue resource三种请求格式和万能测试地址
Sep 26 Javascript
js实现简单的打印表格
Jan 15 Javascript
浅谈Vuex的this.$store.commit和在Vue项目中引用公共方法
Jul 24 Javascript
vue导入.md文件的步骤(markdown转HTML)
Dec 31 #Vue.js
Selenium执行JavaScript脚本的方法示例
Dec 31 #Javascript
javascript实现随机抽奖功能
Dec 30 #Javascript
JS+JQuery实现无缝连接轮播图
Dec 30 #jQuery
微信小程序弹窗禁止页面滚动的实现代码
Dec 30 #Javascript
vue-cli4.0多环境配置变量与模式详解
Dec 30 #Vue.js
基于Vue3.0开发轻量级手机端弹框组件V3Popup的场景分析
Dec 30 #Vue.js
You might like
解析Extjs与php数据交互(增删查改)
2013/06/25 PHP
浅析php适配器模式(Adapter)
2014/11/25 PHP
模仿JQuery.extend函数扩展自己对象的js代码
2009/12/09 Javascript
UserData用法总结 lanyu出品
2010/07/01 Javascript
jquery学习笔记 用jquery实现无刷新登录
2011/08/08 Javascript
jquery $.each() 使用小探
2013/08/23 Javascript
jquery事件与函数的使用介绍
2013/09/29 Javascript
在JS中解析HTML字符串示例代码
2014/04/16 Javascript
举例说明JavaScript中的实例对象与原型对象
2016/03/11 Javascript
JS实现回到页面顶部动画效果的简单实例
2016/05/24 Javascript
JavaScript中定时控制Throttle、Debounce和Immediate详解
2016/11/17 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
彻底解决 webpack 打包文件体积过大问题
2017/07/07 Javascript
js+html5实现复制文字按钮
2017/07/15 Javascript
jQuery选择器之表单元素选择器详解
2017/09/19 jQuery
JavaScript实现表单注册、表单验证、运算符功能
2018/10/15 Javascript
简单使用webpack打包文件的实现
2019/10/29 Javascript
JS实现导航栏楼层特效
2020/01/01 Javascript
JavaScript this指向相关原理及实例解析
2020/07/10 Javascript
vue中template的三种写法示例
2020/10/21 Javascript
python中__call__内置函数用法实例
2015/06/04 Python
Python文本统计功能之西游记用字统计操作示例
2018/05/07 Python
Django如何实现网站注册用户邮箱验证功能
2019/08/14 Python
pytorch实现线性拟合方式
2020/01/15 Python
python实现图像随机裁剪的示例代码
2020/12/10 Python
HTML5移动开发图片压缩上传功能
2016/11/09 HTML / CSS
html5实现多文件的上传示例代码
2014/02/13 HTML / CSS
西班牙汉普顿小姐:购买帆布鞋和太阳镜
2016/10/23 全球购物
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
大学生物业管理求职信
2013/10/24 职场文书
小学三年级学生评语
2014/04/22 职场文书
个人查摆问题及整改措施
2014/10/16 职场文书
爱心募捐感谢信
2015/01/22 职场文书
青年教师听课心得体会
2016/01/15 职场文书
2020年元旦祝福语录,总有适合你的
2019/12/31 职场文书
请求模块urllib之PYTHON爬虫的基本使用
2022/04/08 Python