本文主要是介绍js修改zTree没有子项的节点图标为文件夹的方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
有时候,我们加载的zTree是这样的,箭头所指的节点没有子节点,所以显示白色的图标。
但现在我们这个节点代表其实的不是一个子节点,而是代表一个空目录(这里通过node的sou属性来区分),如何让它显示成文件夹图标呢?
其实,只要找到这些代表目录的节点,设置他们的isParent属性为true,再调用api的refresh方法就行了。
具体代码如下:
$.fn.zTree.init($("#pageTree"), setting, zNodes);//初始化tree
fixIcon();//调用修复图标的方法。方法如下://修正zTree的图标,让文件节点显示文件夹图标
function fixIcon(){var treeObj = $.fn.zTree.getZTreeObj("pageTree");//过滤出sou属性为true的节点(也可用你自己定义的其他字段来区分,这里通过sou保存的true或false来区分)var folderNode = treeObj.getNodesByFilter(function (node) { return node.sou});for(j=0 ; j<folderNode.length; j++){//遍历目录节点,设置isParent属性为true;folderNode[j].isParent = true;}treeObj.refresh();//调用api自带的refresh函数。
}
经过这样处理后,效果如下:
虽然fdsa下面没有子节点,但是仍可以显示文件夹样式的图标。
本文介绍的方法不需要修改样式之类的操作。
这篇关于js修改zTree没有子项的节点图标为文件夹的方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!