news 2026/4/23 20:45:45

3分钟掌握Layui树形复选框:多选联动全攻略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
3分钟掌握Layui树形复选框:多选联动全攻略

3分钟掌握Layui树形复选框:多选联动全攻略

【免费下载链接】layui一套遵循原生态开发模式的 Web UI 组件库,采用自身轻量级模块化规范,易上手,可以更简单快速地构建网页界面。项目地址: https://gitcode.com/GitHub_Trending/la/layui

还在为复杂的树形选择功能而烦恼吗?Layui树形复选框组件让你轻松实现父子节点联动、批量选择等强大功能,特别适合权限分配、分类管理等业务场景。本文将带你从零开始,快速掌握这个实用组件的核心用法。

一、快速入门:开启复选框功能

想要在树形组件中显示复选框,只需要一个简单的配置:

layui.use('tree', function(){ var tree = layui.tree; tree.render({ elem: '#demoTree', data: [{ title: '父节点', id: 1, children: [{ title: '子节点1', id: 101 },{ title: '子节点2', id: 102 }] }], showCheckbox: true // 关键配置,开启复选框 }); });

就是这么简单!一行代码就能让你的树形组件拥有多选能力。

二、智能联动:父子节点自动同步

Layui树形复选框最强大的功能就是智能联动逻辑:

自动同步规则:

  • ✅ 选中父节点 → 所有子节点自动选中
  • ⚠️ 部分子节点选中 → 父节点显示半选状态
  • ❌ 取消所有子节点 → 父节点自动取消选中
tree.render({ elem: '#demoTree', data: [...], showCheckbox: true, oncheck: function(obj){ // 监听复选框点击事件 console.log("节点ID:", obj.data.id); console.log("选中状态:", obj.checked); } });

三、实用技巧:选中状态管理

1. 获取所有选中节点

// 渲染时指定唯一ID tree.render({ id: 'myTree', // 重要:设置实例标识 showCheckbox: true }); // 获取选中数据 var checkedNodes = tree.getChecked('myTree'); console.log("选中节点:", checkedNodes);

2. 批量设置选中状态

// 勾选指定ID的节点 tree.setChecked('myTree', [101, 103, 105]);

四、常见问题解决方案

问题1:如何禁用特定节点?在数据中添加disabled: true属性即可:

{ title: '禁选节点', id: 99, disabled: true // 该节点无法被选中 }

问题2:如何取消父子联动?设置showCheckbox: {linkage: false}即可。

五、实战案例:权限管理系统

<div class="layui-card"> <div class="layui-card-header">角色权限分配</div> <div class="layui-card-body"> <div id="permissionTree"></div> </div> </div> <script> layui.use(['tree', 'layer'], function(){ var tree = layui.tree; var layer = layui.layer; // 权限数据 var permissionData = [ { title: '系统管理', id: 1, children: [ {title: '用户管理', id: 101, checked: true}, {title: '角色管理', id: 102}, {title: '菜单管理', id: 103} ] }, { title: '内容管理', id: 2, children: [ {title: '文章管理', id: 201}, {title: '分类管理', id: 202} ] } ]; // 渲染权限树 tree.render({ elem: '#permissionTree', data: permissionData, id: 'permissionTree', showCheckbox: true }); }); </script>

六、高级配置选项

除了基础的复选框功能,Layui树形组件还提供丰富的配置选项:

  • 手风琴模式accordion: true,同一时间只能展开一个节点
  • 仅图标控制onlyIconControl: true,只能通过图标展开/收缩
  • 连接线控制showLine: false,关闭节点间的连接线

总结

Layui树形复选框组件通过简洁的API设计,让复杂的树形选择变得异常简单。记住几个关键点:

  1. 开启复选框:设置showCheckbox: true
  2. 智能联动:默认开启父子节点状态同步
  3. 状态管理:使用getCheckedsetChecked方法
  4. 灵活配置:支持禁用节点、取消联动等高级功能

掌握了这些技巧,你就能轻松应对各种树形选择需求,大幅提升开发效率。赶紧动手试试吧!

【免费下载链接】layui一套遵循原生态开发模式的 Web UI 组件库,采用自身轻量级模块化规范,易上手,可以更简单快速地构建网页界面。项目地址: https://gitcode.com/GitHub_Trending/la/layui

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 17:24:10

企业级管理系统实战部署:ruoyi-vue-pro全栈解决方案

企业级管理系统实战部署&#xff1a;ruoyi-vue-pro全栈解决方案 【免费下载链接】ruoyi-vue-pro &#x1f525; 官方推荐 &#x1f525; RuoYi-Vue 全新 Pro 版本&#xff0c;优化重构所有功能。基于 Spring Boot MyBatis Plus Vue & Element 实现的后台管理系统 微信小…

作者头像 李华
网站建设 2026/4/23 17:24:40

3大后台开发痛点,这个开源框架如何让效率提升200%?

3大后台开发痛点&#xff0c;这个开源框架如何让效率提升200%&#xff1f; 【免费下载链接】vue-admin-better &#x1f389; vue admin,vue3 admin,vue3.0 admin,vue后台管理,vue-admin,vue3.0-admin,admin,vue-admin,vue-element-admin,ant-design,vab admin pro,vab admin p…

作者头像 李华
网站建设 2026/4/23 14:02:27

Langchain-Chatchat在心理咨询中的应用边界探讨:伦理与风险控制

Langchain-Chatchat在心理咨询中的应用边界探讨&#xff1a;伦理与风险控制 在心理健康服务需求持续增长的今天&#xff0c;专业咨询师资源稀缺、服务成本高昂、隐私顾虑重重等问题日益凸显。越来越多机构开始探索人工智能技术在心理支持领域的可行性。其中&#xff0c;一种基…

作者头像 李华
网站建设 2026/4/23 12:07:08

CVAT自动标注功能完全指南:5步快速提升标注效率90%

CVAT自动标注功能完全指南&#xff1a;5步快速提升标注效率90% 【免费下载链接】cvat Annotate better with CVAT, the industry-leading data engine for machine learning. Used and trusted by teams at any scale, for data of any scale. 项目地址: https://gitcode.com…

作者头像 李华
网站建设 2026/4/23 17:24:20

5分钟快速上手PaddlePaddle深度学习:从零到AI应用实战

5分钟快速上手PaddlePaddle深度学习&#xff1a;从零到AI应用实战 【免费下载链接】Paddle Parallel Distributed Deep Learning: Machine Learning Framework from Industrial Practice &#xff08;『飞桨』核心框架&#xff0c;深度学习&机器学习高性能单机、分布式训练…

作者头像 李华
网站建设 2026/4/23 17:24:19

SwiftUIX图标系统终极指南:高效集成SF Symbols与自定义图标方案

SwiftUIX图标系统终极指南&#xff1a;高效集成SF Symbols与自定义图标方案 【免费下载链接】SwiftUIX An exhaustive expansion of the standard SwiftUI library. 项目地址: https://gitcode.com/gh_mirrors/sw/SwiftUIX SwiftUIX作为标准SwiftUI库的全面扩展&#xf…

作者头像 李华