最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Layui表格工具栏如何添加自定义图标按钮
时间:2026-07-06 11:27:57 编辑:袖梨 来源:一聚教程网
自定义图标按钮需用 lay-template 模板语法并配合 table.on('toolbar(filter)') 监听,通过 lay-event 区分操作,禁用内联 JS;图标不显示常见于 filter 不匹配、字体加载失败或误混行工具栏事件。
layui table toolbar 里加自定义图标按钮不显示?
默认 toolbar 配置只认内置图标名(如 refresh、add),直接写 <i class="layui-icon"></i> 会被当纯文本渲染,不执行 html 解析 —— 这是新手最常卡住的地方。
必须用 toolbar 的模板字符串语法,且开启 parseData 或用 lay-template 手动编译:
- 在表格容器外定义一个
script type="text/html"模板,用id关联 -
table.render()中的toolbar项填#myToolbar(对应模板 ID) - 模板内可自由写
<i class="layui-icon"></i> 导出,图标会正常渲染
layui 2.8+ 中 toolbar 模板里怎么传参或绑定点击事件?
模板本身不自动绑定事件,得靠 table.on('toolbar(filter)') 监听,再根据 event 字段区分按钮。Layui 不会把 DOM 元素传进来,只给一个字符串标识。
实操要点:
- 在模板里用
lay-event="export"给按钮加事件名,不要用onclick - 监听时用
if (event === 'export') { ... }分支处理 - 如果需要当前选中行数据,得先调用
table.checkStatus('id')主动获取 - 避免在模板里写内联 JS,Layui 会忽略它
自定义图标按钮点击后没反应?检查这三点
不是代码没写,而是被几个隐性规则拦住了:
- 表格实例的
id(elem选项)和filter(data-filter属性)必须严格匹配监听事件里的字符串,大小写敏感 - 图标字体文件(
layui/css/layui.css和对应字体)加载失败时,<i>标签会空着,但按钮仍能点 —— 建议用浏览器开发者工具检查 Network 面板里iconfont请求是否 404 - 如果按钮放在
toolbar但又想操作某一行,别忘了:工具栏事件和行工具栏事件是两套监听,不能混用event名
用 SVG 替换 layui-icon 图标可行吗?
可以,但要绕过 layui-icon 类的样式干扰。Layui 的 .layui-icon 会强制设置 font-size 和 line-height,直接塞 SVG 容易错位。
稳妥做法:
- 给 SVG 外层包一个
<span class="custom-icon">,并加style="display:inline-block;vertical-align:middle;" - 去掉
layui-icon类,避免样式污染 - 确保 SVG 有明确宽高(比如
width="16" height="16"),不然在工具栏里可能塌陷 - 注意 IE11 不支持内联 SVG 的某些写法,如
<use xlink:href>,建议用完整 SVG 标签
lay-event 和对应的 table.on() 监听逻辑,图标只是表皮。
相关文章
- 高德地图路线规划显示异常怎么办 07-09
- 漫蛙漫画官方版正版ios如何安装 07-09
- 胖东来官网地址-胖东来官方网站入口地址 07-09
- investopedia官网中文版入口-investopedia国内能用的官方网页版入口地址 07-09
- 一点文学txt小说网站入口-一点文学小说官网入口地址2026最新 07-09
- 易校园怎么绑定微信 07-09