如何使用Layui在按钮点击时动态调整表格列的显示?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1073个文字,预计阅读时间需要5分钟。
相关专题
table.reload() 是唯一可靠方式,别碰 config.cols 直接赋值
直接改 table.config['id'].cols 或写死 table.config.cols = newcols 完全无效——layui 表格渲染后,cols 就不是响应式属性了。dom 不会更新,排序、导出、列宽都会错乱,甚至点击表头无反应。
必须用 table.reload() 触发重载,并显式传入新 cols 数组。这不是“刷新数据”,而是重建列结构。
- 新
cols中每个对象的field必须和后端返回字段名严格一致,大小写、下划线都不能错 - 如果用了
templet、toolbar、unresize等列级配置,得一并写进新cols,不能只改title - 别漏掉
defaultToolbar和autoSort这类表格级配置,reload 时不传就会回退到初始值
按钮点击时怎么安全传入新列配置
监听原生 click 即可,不需要 form.on('select') 或其他封装。关键是把列定义提前抽成变量,避免在回调里拼字符串或硬编码。
本文共计1073个文字,预计阅读时间需要5分钟。
相关专题
table.reload() 是唯一可靠方式,别碰 config.cols 直接赋值
直接改 table.config['id'].cols 或写死 table.config.cols = newcols 完全无效——layui 表格渲染后,cols 就不是响应式属性了。dom 不会更新,排序、导出、列宽都会错乱,甚至点击表头无反应。
必须用 table.reload() 触发重载,并显式传入新 cols 数组。这不是“刷新数据”,而是重建列结构。
- 新
cols中每个对象的field必须和后端返回字段名严格一致,大小写、下划线都不能错 - 如果用了
templet、toolbar、unresize等列级配置,得一并写进新cols,不能只改title - 别漏掉
defaultToolbar和autoSort这类表格级配置,reload 时不传就会回退到初始值
按钮点击时怎么安全传入新列配置
监听原生 click 即可,不需要 form.on('select') 或其他封装。关键是把列定义提前抽成变量,避免在回调里拼字符串或硬编码。

