(原创文章,转载请注明出处)
首先生成Json格式的字符串(写了一个TreeNode对象,专门生成这种格式的字符串):
[
{text:'用户管理',leaf:false,children:
[
{text:'建立用户',leaf:false,children:
[
{text:'用户设置',
href:'/myapp/app?page=destPage&service=external',
hrefTarget:'listFrame',leaf:true}
]
},
{text:'历史查询',leaf:true}
]
}
] 
使用Ext.tree.TreePanel生成树视图:
var Tree = Ext.tree;
//系统管理菜单树
var xtglTree = new Tree.TreePanel(...{
el:'xtgl',
animate:true,
autoScroll:true,
loader: new Tree.TreeLoader(),
enableDD:false,
containerScroll: true,
dropConfig: ...{appendOnly:true},
rootVisible:false
});
//json格式的字符串放在html页面的元素value属性中
var json = Ext.get("xtglMenu").getAttributeNS("","value");

var root_xtgl = new Tree.AsyncTreeNode(...{
text: '功能树',
draggable:false, // disable root node dragging
id:'xtglRoot',
children:JSON.decode(json)
});
xtglTree.setRootNode(root_xtgl);
// render the tree
xtglTree.render();
root_xtgl.expand(false);生成的树如下图:
一切都这么简单。

本文介绍如何使用ExtJS框架创建动态树形视图。通过生成特定格式的JSON字符串,并利用Ext.tree.TreePanel组件,可以轻松实现具有层级结构的数据展示。此方法适用于需要构建导航菜单或其他层次结构的应用场景。
223

被折叠的 条评论
为什么被折叠?



