投放本站广告请联系:
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();});  - 要发表评论,请先登录



非异步树可以试试以下代码
以下代码仅提供一个思路
tree.on('click', function(node, checked) { node.expand(); node.eachChild(function(child) { child.expand(); }); }, tree);异步树不能够实现吗
异步树不能够实现吗?
我要的是树呈现的时候,自动张开所有节点,不是通过点击。
展开所有节点委容易
要展开所有节点,只需要加载完树后加上一句代码即可。