ztree 怎样根据ztree获取父节点id得到所有的子节点

怎么获取内部的treeNode对象(又怎么取某节点的子节点集合)
你好,想跟你请教个问题:
查了API,发现各回调里(我尝试了4个左右) 返回的都是treeNode的数据对象(非原始treeNode对象)
从而没有children属性可用来获取该节点下的子节点,另外又查了zTreeObj对象的方法,getNodeByParam,getNodeByTId等获取到的也是节点的数据对象,而非原始对象,
那么问题就来了,我能想到的都找了下,没发现哪可以取到原始的treeNode对象,那么节点的子节点集合又该怎么取呢?难道getNodesByParam方法用父级ID进行获取吗?感觉性能开销略高
1、你说的原始 treeNode对象是什么意思? 指的是哪儿的数据对象?
2、zTree 返回给你的都是 zTree 内部使用的 treeNode 对象, 默认情况下 children 属性保存的就是该节点的子节点数据,不可能出现你说的不存在 children 属性的情况。。。除非你用的是异步加载模式,并且都没有加载子节点。。。。
--- 共有 1 条评论 ---
我现在再次尝试了下,发现你说的是对的,是我之前不知道哪写错了导致children获取不到.
再根据API里的说明有"JSON"数据这样的字眼,还以为有单独区分
感谢你的回答!ztree获取当前节点下的所有子节点id - Java_Code - ITeye技术网站
博客分类:
var setting = {
simpleData: {
enable: true
showIcon: false
callback:{
onClick:function zTreeOnClick(event, treeId, treeNode){
alert(treeNode.tId + ", " + treeNode.name+", "+treeId);
var ids=[];
ids=getChildren(ids,treeNode);
enable: true,
autoCheckTrigger:false,
chkboxType:{ "Y":"ps", "N":"ps" }
//ids是一个数组 返回结果数组
treeNode是选中的节点
function getChildren(ids,treeNode){
ids.push(treeNode.id);
if (treeNode.isParent){
for(var obj in treeNode.children){
getChildren(ids,treeNode.children[obj]);
浏览 12474
浏览: 57591 次
来自: 济南
感谢博主,解决了我的问题
牛人,赞一个!

我要回帖

更多关于 ztree获取父节点id 的文章

 

随机推荐