easyui tree 模仿ztree 使用扁平化加载json
来源:互联网 发布:韩顺平js视频教程下载 编辑:程序博客网 时间:2024/05/19 19:15
一、扩展原因
ztree使用了一种扁平化的数据加载方式,就是id(自身id),pid(父id)的方式,参考http://www.ztree.me/v3/demo.php#_102,于是扩展easyui tree 也使用这种亲民的方式;
二、基本方法
1,载入扩展文件
2,在JS中实例化TREE
三、具体方法(easyui1.4.1下测试可用)
1,载入扩展JS
//作者孙宇//自定义loadFilter的实现$.fn.tree.defaults.loadFilter = function (data, parent) {var opt = $(this).data().tree.options;var idFiled,textFiled,parentField;if (opt.parentField) {idFiled = opt.idFiled || 'id';textFiled = opt.textFiled || 'text';parentField = opt.parentField;var i,l,treeData = [],tmpMap = [];for (i = 0, l = data.length; i < l; i++) {tmpMap[data[i][idFiled]] = data[i];}for (i = 0, l = data.length; i < l; i++) {if (tmpMap[data[i][parentField]] && data[i][idFiled] != data[i][parentField]) {if (!tmpMap[data[i][parentField]]['children'])tmpMap[data[i][parentField]]['children'] = [];data[i]['text'] = data[i][textFiled];tmpMap[data[i][parentField]]['children'].push(data[i]);} else {data[i]['text'] = data[i][textFiled];treeData.push(data[i]);}}return treeData;}return data;};
2,实例化
//实例化。这里增加了三个属性,可以指定idFiled,textFiled和parentField。所以这里的simpleData可以不严格转换成tree的数据格式。$(function(){$('#tt3').tree({checkbox: true,url: 'tree_data_simp.json',parentField:"pid",textFiled:"name",idFiled:"key"});});
json文件:
[ { "key": 1, "name": "Folder1", "iconCls": "icon-ok" }, { "key": 2,"pid": 1, "name": "File1", "checked": true }, { "key": 3,"pid": 1, "name": "Folder2", "state": "open" }, { "key": 4, "pid": 3, "name": "File3", "attributes": { "p1": "value1", "p2": "value2" }, "checked": true, "iconCls": "icon-reload" }, { "key": 8, "pid": 3, "name": "Async Folder" }, { "key": 9, "name": "language", "state": "closed" }, { "key": "j1", "pid": 9, "name": "Java" }, { "key": "j2", "pid": 9, "name": "C#" }]
0 0
- easyui tree 模仿ztree 使用扁平化加载json
- easyui 扩展tree 为 ztree(id, pid)的扁平数据结构集
- easyui 扩展tree 为 ztree(id, pid)的扁平数据结构集
- 使用EasyUI Tree异步加载JSON数据 生成树
- 使用EasyUI Tree异步加载JSON数据 生成树
- Easyui-tree 加载json数据及loadFilter的使用
- Easyui-tree 加载json数据及loadFilter的使用
- easyui扁平Json生成树形菜单
- 扁平化easyUI default皮肤
- jquery easyui tree动态加载-服务端struts返回json数据
- easyui tree 实现类似ztree的数据格式
- Struts2+json+ztree 同步加载
- 3.easyui+ztree案例:使用easyui布局
- zTree-zTree Tree的 基础使用
- easyui tree动态加载
- EasyUI JS加载Tree
- EasyUI tree加载树
- easyui tree动态加载
- 【PAT】1099. Build A Binary Search Tree
- Chrome远程调试Andoird APP WebView
- AngularJS最理想开发工具WebStorm
- 数据库备份还原 quartz定时任务调度 自定义表单 java图片爬虫
- bcrypt使用报错-No callback function was given
- easyui tree 模仿ztree 使用扁平化加载json
- ip包格式说明
- APIGuide_应用组件
- uva 10626Buying Coke
- HBase WAL机制
- 二维灰度地形图山脊线自动提取方法整理(最小生成树)
- hdu 1269 迷宫城堡 判断图是否强连通
- Android安全攻防战,反编译与混淆技术完全解析(下)
- 搭建yarn方式管理hadoop2.x