Layui表格中开关按钮的渲染与状态监听实现

作者:清欢时间:2026-10-23 11:37:17浏览:554

本文介绍如何在Layui表格中实现开关按钮效果。首先引入必要的JS和CSS文件,随后在表格列定义中使用formatter函数根据数据值生成带lay-skin=switch的复选框。最后通过layui.use加载form模块,利用form.render刷新控件,并绑定switch事件以处理状态变更逻辑。

引入Layui基础资源

首先需要在页面中引入Layui框架所需的JavaScript和CSS资源文件。


<script src="/common/plugins/layui-v2.2.5/layui.js" charset="utf-8"></script>

<link rel="stylesheet" type="text/css" href="/common/plugins/layui-v2.2.5/css/layui.css" rel="external nofollow" />

接下来构建一个列表表格,其中包含一个名为“是否有效”的字段用于展示状态。

表格列渲染配置


 {title: "是否有效", field: "isValid",align:"center",formatter:function(value,row,index){
    if(row.isValid == 1){
            return "<div class=\"layui-form\"> <input type=\"checkbox\" value=\""+row.id+"\" name=\"isValid\" lay-filter=\"isValid\" checked lay-skin=\"switch\" lay-text=\"是|否\"></div>";
             }else {
               return "<div class=\"layui-form\"> <input type=\"checkbox\" value=\""+row.id+"\" name=\"isValid\" lay-filter=\"isValid\" lay-skin=\"switch\" lay-text=\"是|否\"></div>";
             }

          }},

必须执行特定的渲染步骤,才能使开关按钮在表格中正确显示效果。

表单渲染与事件监听


 onLoadSuccess: function (data) {
     layui.use('form', function(){
         var form = layui.form; 
         form.render('checkbox');
         form.on('switch(isValid)', function(data){
           changState(data.value,data.elem.checked);
         });
         form.on('switch(isTraining)', function(data){
           changState1(data.value,data.elem.checked);
         });
   form.on('switch(isTraining)', function(data){
   changState1(data.value,data.elem.checked);
   });
       });

       }

引入Layui基础资源

随后需要编写逻辑代码,以判断开关状态修改的操作是否成功执行。

引入Layui基础资源

以上即为在Layui中实现开关按钮效果的完整实现过程,供开发者参考使用。

作者最新文章