`
haolianshuai
  • 浏览: 22621 次
社区版块
存档分类
最新评论

zTree中设置idKey跟pId对象关联

    博客分类:
  • js
阅读更多
在使用zTree过程中,突然发现他的idkey跟pid必须指定一个单纯的主外键,而不能使用对象解析来绘制树(如:parentModule.id),于是查看了源码,经过改装之后支持了对象关联的遍历,特此做下记录,希望对遇到同样问题的朋友有所帮助。
注意:此种做法针对于ztree3.5版本的。
首先打开ztree的核心源码。jquery.ztree.core-3.5.js找到594行起,修改成如下,然后setting中的data的pidkey写parentModule.id即可
for (i=0, l=sNodes.length; i<l; i++) {
					if(parentKey.indexOf('.')!=-1){
						var parent = sNodes[i];
						parent = parseData(parent,parentKey);
						if (tmpMap[parent] && sNodes[i][key] != parent) {
							if (!tmpMap[parent][childKey])
								tmpMap[parent][childKey] = [];
							tmpMap[parent][childKey].push(sNodes[i]);
						} else {
							r.push(sNodes[i]);
						}
					}else{
						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]);
						}
					}
				}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics