同一张表,在不同的条件下显示数据,但有一列数据在条件A下不需要显示,那么如何隐藏这一列呢?
- ctrl+c+v 一下是最直接粗暴的方式了,但是这么low的方法自然匹配不了你我的颜值。
- 可以看到,基础参数cols其实是一个数组,可以将这个数组提出来,格局条件动态的push/pop值就可以实现我们想要的功能了。是不是so easy呢?
var cols = [
{ type: 'checkbox', width: 50 },
...
{ field: '', title: '', hide: true }
]
cols.push({field: '', title: '', sort: true});
table.render({
...
cols: [cols],
...
});
除此之外,如果要编辑复杂表头,layui文档中提供的方法是通过自动渲染来实现的,如果你想通过方法渲染来实现同样的效果,其实也是修改基础属性的cols。
table.render({
...
cols: [[
{ field: 'Id', hide: true, rowspan: 2 },
{ align: 'center', rowspan: 2, title: '' },
{ align: 'center', rowspan: 2, title: '' }
{ align: 'center', colspan: 3, field: '', title: '性能参数' },
...
], [
{ align: 'center', field: '', title: '' },
{ align: 'center', field: '', title: '' },
{ align: 'center', field: '', title: '' }
]],
这里要设置rowspan和colspan。我的语言表达不好,就不强行解释了,关于rowspan和colspan的作用你们还是去看官方文档吧,看过官方文档就理解上面代码的含义了。