Ztree中simpleData是怎么转换成标准ztree数组对象的
2015-06-10 20:11
281 查看
今天遇到一个自己构造树的情况,树是动态的,预先不知道根节点,用的是easyUI中的tree,于是参考了下Ztree中的实现,恍然大悟,遂记之:
transformTozTreeFormat: function(setting, sNodes) { var i,l, key = setting.data.simpleData.idKey, parentKey = setting.data.simpleData.pIdKey, childKey = setting.data.key.children; if (!key || key=="" || !sNodes) return []; if (tools.isArray(sNodes)) { var r = []; var tmpMap = []; for (i=0, l=sNodes.length; i<l; i++) { tmpMap[sNodes[i][key]] = sNodes[i]; } for (i=0, l=sNodes.length; i<l; i++) { if (tmpMap[sNodes[i][parentKey]] && sNodes[i][key] != sNodes[i][parentKey]) { if (!tmpMap[sNodes[i][parentKey]][childKey]) tmpMap[sNodes[i][parentKey]][childKey] = []; tmpMap[sNodes[i][parentKey]][childKey].push(sNodes[i]); } else { r.push(sNodes[i]); } } return r; }else { return [sNodes]; } }
相关文章推荐
- ok
- 各种数据库的jdbc驱动及连接方式
- G - Arranging Your Team
- Dfs之城堡问题(POJ 2815)
- canjs基础教程之EJS
- 为什么科技巨头们纷纷更换 Logo?
- 六白话经典算法系列 高速分拣 高速GET
- Mybatis学习(七)mybatis中的SqlSession使用的范围
- VIM使用技巧 ctags taglist
- Java IO和字符编码
- 破译密码
- jQuery访问属性,绝对定位
- C++ DLL调用
- HDU 1532Drainage Ditches(最大流模板题 ISAP)
- Linux iptables:场景实战一
- Linux zabbix 配置注意事项
- grep的基本用法详解
- 乐视生态危机背后,互联网电视谁将后发制人
- Java实验五报告——TCP传输及加解密
- C++ stream