TreePanel中查询

来源:互联网 发布:苹果ai软件 编辑:程序博客网 时间:2024/05/21 07:53

详细用法如下(从tbar开始):

var hiddenNodes = [];   // 用来存储隐藏的tree节点var plansTree = new Ext.tree.TreePanel({            xtype : "treepanel",            title : '计划树',            region : 'west',            border : true,            frame : true,            enableDD : false,            animate : true,            containerScroll : true,            // ########################            tbar:["关键字:",{                xtype:"textfield",                enableKeyEvents:true,                listeners:{                    keyup:function(){                        // 获取输入的关键字                        var k = this.getValue();                          // 每次输入新的关键字,将缓存的节点全部显示                        Ext.each(hiddenNodes, function(n) {                              n.getUI().show();                          });                         // 清除缓存                        hiddenNodes = []                        // 层叠展开搜索                                                plansTree.getRootNode().cascade(function(n) {                              // 如果不是顶级父节点                            if(n.id!='0'){                                  // 如果节点text并未包含关键字,将其缓存并隐藏                                if(n.text.indexOf(k)==-1){                                      hiddenNodes.push(n);                                      n.getUI().hide();                                  }else{                                    // 否则向上冒泡,将其所在的父节点一一显示                                    n.bubble(function(n){                                        if(n.id!="0"){                                            n.getUI().show()                                        }                                    })                                }                              }                          });                      }                }            }],            // ########################            ddGroup : 'organizerDD',            rootVisible : true,            selModel : new Ext.tree.DefaultSelectionModel(),            border : false,            width : 'auto',            autoScroll : true,            split : true,            collapseMode : 'mini',            loader : new Ext.tree.TreeLoader({                // 自定义                }),            root : new Ext.tree.AsyncTreeNode({                text : 'root',                draggable : false,                expanded : true            })        })
0 0
原创粉丝点击