layui tree组件取消勾选

layui(2.8.15) tree的api中,只有 tree.setChecked(id, idArr) 方法,没有取消勾选的方法。

我的需求是:勾选后做判断,如果不符合条件则取消勾选。

实现方法:

使用 tree的oncheck事件,在回调函数中做判断,并确定是否取消勾选:

javascript 复制代码
layTree.render({
    elem: '#menuTree',
    id: 'roleMenuTree',
    showCheckbox:true,
    data: tempData,
    oncheck: function(obj){
        //console.log(obj.data); // 得到当前点击的节点数据
        //console.log(obj.checked); // 节点是否被选中
        //console.log(obj.elem); // 得到当前节点元素

        if (obj.data.text==='菜单管理'){
            layer.msg('《菜单管理》不能选!');
            obj.elem.find('.layui-form-checked').removeClass('layui-form-checked');
            return;
        }
    }
});

即使用 obj.elem.find('.layui-form-checked').removeClass('layui-form-checked'); 取消勾选。经过验证,在后边使用 tree.getChecked(id) 获取已勾选的内容时,与页面显示的数据一致,无需特殊处理。

相关推荐
前端一课几秒前
【vue高频面试题】第 15 题:computed vs watch 区别 + 使用场景
前端·面试
前端一课几秒前
【vue高频面试题】第 20 题:Vue3 生命周期 + watch 执行顺序
前端·面试
前端一课几秒前
【vue高频面试题】第 16 题:Vue3 响应式原理深度解析(Proxy + effect 栈 + 依赖追踪)
前端·面试
执笔论英雄4 分钟前
【大模型推理】小白教程:vllm 异步接口
前端·数据库·python
炒毛豆4 分钟前
vue3+ant design vue实现表单验证失败后,自动滚动到失败的位置(scrollToField)
前端·javascript·vue.js
木易 士心12 分钟前
Error: Module ‘@npmcli/config’ not found — 如何解决?
javascript·npm
IT_陈寒14 分钟前
Vite 5个隐藏功能大揭秘:90%的开发者都不知道这些提速技巧!
前端·人工智能·后端
fruge18 分钟前
Vue3 实战避坑:10 个 Composition API 高频错误及修复方案
前端·javascript·vue.js
郑板桥3026 分钟前
如何自定义一个MCP服务器:从零到一的完整指南
前端·vscode