直接修改 btn 数组第一个字符串即可更改「确定」按钮文案,btn 是长度≥2的字符串数组,依次对应确定、取消及第三个按钮,默认为['确定','取消'],全局配置用 layer.config({btn:['ok','cancel']})。
直接改 btn 数组里第一个字符串就行,不用动 css、不靠插件、也不用重写 html。
btn 参数决定按钮文案,顺序固定
layer.confirm 的按钮文字完全由配置项 btn 控制,它是一个长度 ≥2 的字符串数组,从左到右依次对应「确定」按钮、「取消」按钮,以及可选的第三个按钮。
- 默认值是
['确定', '取消'],所以改第一个元素就是改「确定」按钮 - 比如想改成「提交」「删除」「我已知晓」,直接传
btn: ['提交', '取消'] - 数组长度必须 ≥2,否则「取消」按钮会消失,且右上角 × 点击后不会触发
cancel回调 - 支持 HTML 字符串(如
'<i class="layui-icon"></i> 删除'),但仅限静态内容,别拼接用户输入,防 XSS
三个按钮时,btn 和回调必须严格配对
加第三个按钮不是只改 btn 数组就完事,回调函数命名和数量也得对上,否则按钮点不动。
-
btn: ['继续', '重填', '放弃']→ 必须提供三个回调:第一个是yes(或省略名),第二个是btn2,第三个是btn3 - 漏掉
btn3函数,「放弃」按钮点击后毫无反应,控制台也不报错,极难定位 - 别把
cancel当作第三个按钮的回调——cancel只响应右上角 ×,和btn3无关
全局统一改默认文案,避免每个地方都写
如果项目全站都要英文或业务化文案(比如「确认操作」「暂不处理」),别在每个 layer.confirm 里重复写 btn。
- 在引入 Layui 后、首次调用
layer前,执行layer.config({ btn: ['OK', 'Cancel'] }) - 这个设置会影响所有后续的
layer.confirm、layer.alert等带按钮的弹层 - 注意:Layui 官方 i18n 支持弱,
layer.config是最稳的覆盖方式 - 如果已有部分弹层用了自定义
btn,它们会优先级更高,不受全局配置影响
容易被忽略的是:按钮文案改了,但没同步更新回调里的业务逻辑注释或日志输出,时间一长自己都忘了「继续」到底代表保存还是跳过。建议文案和回调里 console.log 或注释保持一致。











