2010年06月01日   ExtJs, 码农之路   9,309 次浏览

首先我们创建树:

var tree = new Ext.tree.TreePanel({
    // 中间定义部分省略
});

然后控制树的一些事件:

var flag = false;
 
// 树加载完成后事件
tree.on("load", function() {
    // 只有单整个树加载完成后,才对树节点的展开事件进行处理
    // 因为树在加载过程中,系统可能会触发树节点的展开事件
    flag = true;
});
 
// 树节点展开事件
tree.on("expandnode", function(node) {
    if(!flag) return;
 
    // 如果是根节点则不用处理
    if(node.getDepth() == 0) return;
 
    // 得到当前节点父节点下所有子节点(也就是当前节点的同级节点)
    var nodes = node.parentNode.childNodes;
 
    // 隐藏除当前节点之外其他节点的子节点
    for(var i = 0; i < nodes.length; i++) {
        if(nodes[i] != node) {
            nodes[i].collapse(true);
        }
    }
});

总结:最主要的就是树节点的展开事件”expandnode”和得到同级节点”node.parentNode.childNodes”。

赞 赏
申明:除非注明,本站文章均为原创,转载请以链接形式标明本文地址。 如有问题,请于一周内与本站联系,本站将在第一时间对相关内容进行处理。
本文地址: http://www.yyjjssnn.cn/articles/479.html
相关阅读: ExtJs, Tree

>>> Hello World <<<

这篇内容是否帮助到你了呢?

如果你有任何疑问或有建议留给其他朋友,都可以给我留言。

:wink: :twisted: :surprised: :smile: :smile9: :smile8: :smile7: :smile6: :smile5: :smile56: :smile55: :smile54: :smile53: :smile52: :smile51: :smile50: :smile4: :smile49: :smile48: :smile47: :smile46: :smile45: :smile44: :smile43: :smile42: :smile41: :smile40: :smile3: :smile39: :smile38: :smile37: :smile36: :smile35: :smile34: :smile33: :smile32: :smile31: :smile30: :smile2: :smile29: :smile28: :smile27: :smile26: :smile25: :smile24: :smile23: :smile22: :smile21: :smile20: :smile1: :smile19: :smile18: :smile17: :smile16: :smile15: :smile14: :smile13: :smile12: :smile11: :smile10: :smile0: :sad: :rolleyes1: :redface: :razz: :question: :neutral: :mrgreen: :mad: :lol: :idea: :exclaim: :evil: :eek: :cry: :cool: :confused: :biggrin: :arrow:

友情链接: 程序员刘杨 刘杨
Copyright 2003~2018 保留所有权利 | 网站地图
备案号:湘ICP备14001005号-2

湘公网安备 43011102001322号