layui 勾选不联动父项 树形控件,treetable-lay
简介
Layui的树形表格treeTable,支持异步加载(懒加载)、复选框联动、折叠状态记忆。
更新日志
2019-11-18 (v2.0)
重构treeTable,不再基于数据表格table模块
支持懒加载(异步加载)、支持数据渲染
同时支持pid形式数据和children形式数据
无需指定最顶级pid,自动查找
支持复选框联动,支持半选状态
支持折叠状态记忆
支持只刷新某个节点下数据
支持自定义树形图标
支持设置节点勾选、获取勾选节点
支持行单击、双击、单元格单击、双击事件
支持单元格编辑,并且支持校验格式
支持固定表头,支持ful-xxx的写法
支持自定义复杂表头
优化搜索功能,提供更好的搜索体验
2018-07-22 (v1.0)
基于数据表格table模板实现树形结构
实现折叠/展开功能
使用文档
以下是1.0版本使用文档
引入模块
下载module/treetable-lay整个文件夹,放在你的项目里面,然后使用模块加载的方式使用:
layui.config({
base: 'module/'
}).extend({
treetable: 'treetable-lay/treetable'
}).use(['treetable'], function () {
var treetable = layui.treetable;
});
渲染表格
layui.use(['treetable'], function () {
var treetable = layui.treetable;
// 渲染表格
treetable.render({
treeColIndex: 2, // treetable新增参数
treeSpid: -1, // treetable新增参数
treeIdName: 'd_id', // treetable新增参数
treePidName: 'd_pid', // treetable新增参数
treeDefaultClose: true, // treetable新增参数
treeLinkage: true, // treetable新增参数
elem: '#table1',
url: 'json/data1.json',
cols: [[
{type: 'numbers'},
{field: 'id', title: 'id'},
{field: 'name', title: 'name'},
{field: 'sex', title: 'sex'},
{field: 'pid', title: 'pid'},
]]
});
});
注意:
可以使用url传递数据,也可以使用data传递数据,如果使用url传递数据,参数是where字段,
跟layui数据表格的使用方式一致。
数据格式
总而言之就是以id、pid的形式,不是以subMenus的形式,当然id、pid这两个字段的名称可以自定义:
{
"code":0,
"msg":"ok",
"data":[{
"id":1,
"name":"xx",
"sex":"male",
"pid":-1
},{
"id":2,
"name":"xx",
"sex":"male",
"pid":1
}
]
}
参数说明
layui数据表格的所有参数都可以用,除此之外treetable新增的参数有:
参数
类型
是否必填
描述
treeColIndex
int
是
树形图标显示在第几列
treeSpid
object
是
最上级的父级id
treeIdName
string
否
id字段的名称
treePidName
string
否
pid字段的名称
treeDefaultClose
boolean
否
是否默认折叠
treeLinkage
boolean
否
父级展开时是否自动展开所有子级
treeColIndex
树形图标(箭头和文件夹、文件的图标)显示在第几列, 索引值是cols数组的下标。
treeSpid
最上级的父级id,比如你可以规定pid为0或-1的是最顶级的目录。
treeIdName
treetable是以id和pid字段来渲染树形结构的,如果你的数据没有id和pid字段,你可以指定id和pid字段的名称。
treePidName
pid在你的数据字段中的名称。
treeDefaultClose
默认是全部展开的,如果需要默认全部关闭,加上treeDefaultClose:true即可。
treeLinkage
父级展开时是否自动展开所有子级
注意事项
不能使用分页功能,即使写了page:true,也会忽略该参数。
不能使用排序功能,不要开启排序功能。
table.reload()不能实现刷新,请参考demo的刷新。
除了文档上写的treetable.xxx的方法之外,其他数据表格的方法都使用table.xxx。
建议删除和修改请求完后台之后请刷新(重新渲染)表格,最好不要使用obj.delete方式删除。
其他方法
全部展开
treetable.expandAll('#table1');
全部折叠
treetable.foldAll('#table1');
如何修改图标
通过css来修改图标,content是图标的unicode字符。
修改文件夹图标:
/** 未展开 */
.treeTable-icon .layui-icon-layer:before {
content: "\e638";
}
/** 展开 */
.treeTable-icon.open .layui-icon-layer:before {
content: "\e638";
}
修改文件图标:
.treeTable-icon .layui-icon-file:before {
content: "\e621";
}
修改箭头的图标:
/** 未展开 */
.treeTable-icon .layui-icon-triangle-d:before {
content: "\e623";
}
/** 展开 */
.treeTable-icon.open .layui-icon-triangle-d:before {
content: "\e625";
}
效果展示
layui 勾选不联动父项 树形控件,treetable-lay相关推荐
- layui 勾选不联动父项 树形控件_layui树形组件重现勾选过程的办法
layui提供了两种初始化节点选中状态的方式 一 tree.setChecked('demoId', [2,13,18,19]); //批量勾选 id 为2,13,18,19 的节点 其中19是用户真 ...
- MFC 为树形控件添加图标
添加控件,树形控件,静态文本框和编辑框.树形控件属性Has Buttons,Has Lines, Lines At Root 勾选为True. 并为树形控件添加变量,m_webTree 在初始化函数中 ...
- Qt QTreeWidget树形控件用法详解
文章目录 QTreeWidget控件的创建 QTreeWidget\QTreeView的关系和区别 QTreeWidgetItem类 QTreeWidget的实际应用 1) 添加结点 2) 给结点添加 ...
- 带复选框和简单描述的Qt QTreeWidget树形控件的简单使用
Qt QTreeWidget树形控件的简单使用 具有选择框的树形控件 具有选择框的树形控件 效果:当选中顶层的树形节点时,子节点全部被选中:当取消选中顶层树形节点时,子节点全部被取消:当选中子节点时, ...
- python3:wxpython分割窗、通过菜单项切换左面板树形控件
1. 功能概述 这里简单介绍下,通过分割窗垂直分割出两块区域,并绑定两个面板,左面板绑定3个树形控件,初始隐藏.然后添加菜单,绑定事件,通过点击菜单来切换树形控件的显示 2. 效果图 ...
- vue+element-ui之tree树形控件有关子节点和父节点之间的各种选中关系详解
做后端管理系统,永远是最蛋疼.最复杂也最欠揍的事情,也永远是前端开发人员最苦逼.最无奈也最尿性的时刻.蛋疼的是需求变幻无穷,如同二师兄的三十六般变化:复杂的是开发难度寸步难行,如同蜀道难,难于上青天: ...
- qt中树形控件QTreeWidget的项点击后获取该项的文本
概述 通过点击树形控件的项,可以得到被点击的树形控件的文本,使用树形控件的信号itemPressed与所在类的槽函数绑定,通过传递参数QTreeWidgetItem和列column,在绑定的槽函数中得 ...
- Element ui tree树形控件获取当前节点id和父节点id
低版本Element ui tree树形控件获取当前节点id和父节点id的方法:点击查看 最新版本Element ui tree树形控件获取当前节点id和父节点id教程: 1.找到node_modul ...
- elementui tree获取父节点_vue_elementUI_ tree树形控件 获取选中的父节点ID
一, vue_elementUI_ tree树形控件 1.1默认点击tree节点的第一个(注意不是checked选中) :expand-on-click-node="false" ...
- jQuery树形控件zTree使用小结
0 zTree简介 树形控件的使用是应用开发过程中必不可少的.zTree 是一个依靠 jQuery 实现的多功能 "树插件".优异的性能.灵活的配置.多种功能的组合是 zTree ...
最新文章
- 【Dual-Path-RNN-Pytorch源码分析】Dual_RNN_Block
- Office无法打开超链接地址问题
- 【科普】一图区分 IAAS + PAAS + SAAS
- php上个月的最后一天,在PHP中查找上个月的最后一天
- linux跑循环脚本占内存,Linux下实现脚本监测特定进程占用内存情况
- javascript中作用域、全局作用域、局部作用域、隐式全局变量、块级作用域、作用域链、预解析
- 计算机视觉基础-图像处理 Task06 边缘检测
- 调用讯飞开放平台的语音转写api
- 互联网中B端客户和C端客户的区别
- 分布式一致性哈希分析
- 《腾云点菜宝》项目总结
- 【全开源+免费更新】doodoo.js项目结构
- java打印超市消费小票_Java-超市购物小票案例-详细介绍
- @开发者,微软 CEO 萨提亚带领 60 位大咖的集结令,你敢接吗?
- 基于FFmpeg+rtsp读取摄像头实时图像
- 抖音1元秒杀活动背后赚钱秘诀是什么? 怎么个玩法?
- Azure Linux如何启用root用户登录
- 川农在线计算机应用答案,川农20春《计算机应用基础(专科)》离线考核
- xbox360游戏下载_Xbox Live游戏玩家API
- jQuery EasyUI 提示框(Messager)用法