投放本站广告请联系:
extjscn#126.com
怎样AsyncTreeNode展开所有的子节点
我的代码如下,目前的问题是当根节点下面保护的节点中还有子节点,那么根节点只能展开第一层的节点,第一层下面包含的子节点没办法自动展开,请问要设置那些属性吗?
var Tree = Ext.tree; var root = new Tree.AsyncTreeNode({ text : paraMenuName, draggable : false, expanded :true, id : 'root', loader : new Tree.TreeLoader({ dataUrl : menuUrl }) }); var tree = new Ext.tree.TreePanel({ contentEl : 'west', border : true, root : root, region : 'west', id : 'west-panel', split : true, width : 160, minSize : 150, maxSize : 200, margins : '0 0 0 0', layout : 'accordion', title : paraMenuName, collapsible : true, layoutConfig : { animate : true }, rootVisible : true, autoScroll : true }); tree.on('click', treeClick); var tab = new Ext.TabPanel({ region : 'center', xtype: 'tabpanel', id:'tabcontent', resizeTabs:true, deferredRender : false, activeTab : 0, minTabWidth: 100, tabWidth:150, enableTabScroll:true, plugins: new Ext.ux.TabCloseMenu(), defaultType:"iframepanel", items : [{ contentEl : 'contenPanel', title : menuName, autoScroll : true, id : resid, iconCls:'tabs', closable : false, defaultSrc : FirstmenuURL, frameConfig: { id:'myFrame', name:'myFrame', frameborder:0} }] }); //tab.setIconClass('tabs'); function treeClick(node, e) { if (node.isLeaf()) { e.stopEvent(); var n = tab.getComponent(node.id); if (!n && node.id != resid) { n = tab.add(new Ext.ux.ManagedIframePanel({ id : node.id, title : node.text, closable : true, iconCls:'tabs', autoScroll : true, frameConfig: { id:node.id+'frame', name:node.id+'frame', frameborder:0}, defaultSrc:node.attributes.href })); //n.setIconClass('new-tab'); } tab.setActiveTab(n); } } var headerPanel = new Ext.BoxComponent({ region : 'north', el : 'north', margins : '0 0 3px 0', height : 77 }); Ext.onReady(function() { var viewport = new Ext.Viewport({ layout : 'border', items : [headerPanel, tree, tab] }); viewport.doLayout(); tree.render(); root.expandChildNodes(true); loadend();});
- 要发表评论,请先登录
非异步树可以试试以下代码
以下代码仅提供一个思路
异步树不能够实现吗
异步树不能够实现吗?
我要的是树呈现的时候,自动张开所有节点,不是通过点击。
展开所有节点委容易
要展开所有节点,只需要加载完树后加上一句代码即可。