element-ui的el-table怎么合并表头

Front-end

2020-04-07

18

0

看了文档发现并没有提供合并表头的属性,所以只能自己来写。

table自带合并属性:rowSpan和colSpan,所以合并表头的思路是,获取所有的表头单元格,针对性的对需要合并的单元格进行操作。

比如我们想要合并的是第二列和第三列,那么我们先获取到所有的表格,然后将第二列的colSpsn设为2,将第三列的表头display设为none。

// template标签里
 
  
  
  



data() {
    tableData: [
      {
        date: '2016-05-02',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1518 弄'
      }, {
        date: '2016-05-04',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1517 弄'
      }, {
        date: '2016-05-01',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1519 弄'
      }, {
        date: '2016-05-03',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1516 弄'
      }
    ],
},

methods: {
    setColSpan:function() {
      // console.log(document.getElementsByClassName("el-table__header"))
      // 获取表头的所有单元格
      var x = document.getElementsByClassName("el-table__header")[0].rows[0].cells
      // 将第二列表头单元格的colSpan设为2
      x[1].colSpan = 2
      // 将第三列表头单元格的display设为none
      x[2].style.display = 'none'
    },
},


mounted() {
    // 注意一定要保证DOM渲染完成后在进行合并操作,否则会找不到元素
    this.$nextTick(function(){
      this.setColSpan();
    })
}

 

 

 

 

 

 

发表评论

全部评论:0条

lmy233

努力工作学习生活的人呐~~

联系方式

神圣之子仅供学习交流
E-mail:limengyu233@163.com
github:https://github.com/lmy01