Layui Switch开关动态控制禁用状态

作者:小满

时间:2026-10-23

浏览:553

本文介绍如何在Layui框架中通过JavaScript动态控制Switch开关的启用与禁用状态。当后台返回特定数据时,通过移除DOM元素的class属性来改变开关显示效果,并结合事件监听实现交互控制,确保未填写记录无法被启用。

文章目录

Layui Switch动态禁用控制

Layui提供的switch组件用于展示当前状态,即启用或禁用。若某条记录的特定字段未填写,则该记录不应处于启用状态,且页面上需禁止对该记录进行任何操作。

具体实现代码如下:


 // 页面状态栏事件监听
  form.on('switch', function (data) {
    var swithcData = data;
    var id = data.value;// 获取要修改的ID
    var state = this.checked ? '0' : '2';// 当前状态值
    $.ajax({
      url: '/adChannelConfig/editState',
      data: {
        "id": id,
        "state": state
      },
      error: function (data) {
        console.log(data);
        layer.msg('数据异常,操作失败!');
      },
      // 修改失败,请填写对应的参数
      success: function (data) {
        if (data.data) {
          layer.msg('操作成功!');
        } else {
          layer.msg(data.msg);
          var em = $(swithcData.othis[0]);
          swithcData.othis[0].classList.remove('layui-form-onswitch');
          em.children('em').text('停用');
        }
      }
    });
  });

当后台返回添加失败的数据时,程序进入else分支。此时将当前DOM对象赋值给变量swithcData,并删除其class属性,以此控制Layui switch组件的页面显示效果。

在DOM结构中,需要点击索引为0的元素才能触发操作。由于数字类型的属性名无法通过点号语法获取,因此采用[0]的方式访问。

以上关于Layui中Switch开关动态控制启用状态的方法即为全部内容,供读者参考,欢迎支持本站。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章