html table相同值合并单元格,element表格列单元格相同合并

效果预览:

451d724e84ed

Snipaste_2020-07-06_17-15-56.png

html代码:

border height="650px" :span-method="objectSpanMethods"

style="width: 100%;overflow: auto;margin: 0 auto;height: 650px;">

{{scope.row.wlzl}}

{{scope.row.ponm}}

{{scope.row.prnm}}

:class="[scope.row.rela === '取消'?'qxColor':[scope.row.rela === '新增'?'xzColor':[scope.row.rela === '替换'?'thColor':'' ]]]">{{scope.row.rela}}

js代码:

// 获取合并的数组

flitterData(arr) {

let spanOneArr = []

let spanTwoArr = []

let concatOne = 0

let concatTwo = 0

arr.forEach((item, index) => {

if (index === 0) {

spanOneArr.push(1);

spanTwoArr.push(1);

} else {

if (item.jxno === arr[index - 1].jxno) { //第一列需合并相同内容的判断条件

spanOneArr[concatOne] += 1;

spanOneArr.push(0);

} else {

spanOneArr.push(1);

concatOne = index;

};

if (item.code === arr[index - 1].code && item.jxno === arr[index - 1].jxno) {//第二列需合并相同内容的判断条件

spanTwoArr[concatTwo] += 1;

spanTwoArr.push(0);

} else {

spanTwoArr.push(1);

concatTwo = index;

};

}

});

return {

one: spanOneArr,

two: spanTwoArr,

}

},

// 合并列

objectSpanMethods({ row, column, rowIndex, columnIndex }) {

if (columnIndex === 0) {

const _row = (this.flitterData(this.list).one)[rowIndex];

const _col = _row > 0 ? 1 : 0;

return {

rowspan: _row,

colspan: _col

};

}

if (columnIndex === 1) {

const _row = (this.flitterData(this.list).two)[rowIndex];

const _col = _row > 0 ? 1 : 0;

return {

rowspan: _row,

colspan: _col

};

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
el-tableelement-ui 提供的表格组件,可以用于展示和操作数据。 在 el-table 中,动态合并相同数据行和单元可以通过使用 el-table-column 的 scoped slot 来实现。 首先,我们需要对数据进行预处理,找出相同的数据行和,然后为这些单元添加合适的合并规则。 在 el-table 中,我们可以通过设置 el-table-column 的 prop 属性来绑定数据的字段,然后使用 scoped slot 来自定义单元的内容和样式。 例如,假设我们有一个数据表格,其中包含学生的姓名、班级和成绩。要合并相同的班级和成绩,我们可以通过以下步骤来实现: 1. 遍历数据表格,找出相同的班级和成绩的数据行,并记录下来。 2. 在 el-table 中,使用 el-table-column 标签来定义每的内容和样式。 3. 对于需要合并,我们可以使用 scoped slot 来自定义单元的内容。在 scoped slot 中,我们可以通过判断当前单元的数据和上一行单元的数据是否相同来决定是否显示数据并合并单元。 4. 在 scoped slot 中,通过设置 rowspan 和 colspan 来合并单元。rowspan 可以设置合并的行数,colspan 可以设置合并数。 通过以上步骤,我们可以动态合并相同数据行和单元。这样可以提高数据表格的可读性和美观度。 总结:el-table 可以通过使用 scoped slot 和合并规则来实现动态合并相同数据行和单元。这样可以通过优化表格的展示效果,提高数据的可读性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值