Ext Tree控件的使用

树是一个我们日常用的组件,Ext给我们提供了一个非常好用的树控件,下面让我们看看用Ext创建一颗树是多么容易的。 
Html代码   收藏代码
  1.  <script>  
  2. Ext.onReady(function(){  
  3.   
  4.     var tree = new Ext.tree.TreePanel({  
  5.         el:'tree'  
  6.     });  
  7.   
  8.     var root = new Ext.tree.TreeNode({text:'root'});  
  9.     var node1 = new Ext.tree.TreeNode({text:'catalog'});  
  10.     var node2 = new Ext.tree.TreeNode({text:'catalog1_leaf'});  
  11.     var node3 = new Ext.tree.TreeNode({text:'root_leaf'});  
  12.     node1.appendChild(node2);  
  13.     root.appendChild(node1);  
  14.     root.appendChild(node3);  
  15.   
  16.     tree.setRootNode(root);  
  17.     tree.render();  
  18.   
  19.   
  20.     root.expand();  
  21. //可以有两个参数  
  22.   
  23. });  
  24.         </script>  
  25.     </head>  
  26.     <body>  
  27.         <div id="tree" style="height:800px;"></div>  
  28.     </body>  
  29. </html>  

通过文件生成Tree 
Js代码   收藏代码
  1. Ext.onReady(function(){  
  2.   
  3.     var tree = new Ext.tree.TreePanel({  
  4.         el: 'tree',  
  5.         loader: new Ext.tree.TreeLoader({dataUrl: 'data.txt'})  
  6.     });  
  7.   
  8.     var root = new Ext.tree.AsyncTreeNode({text:'root'});  
  9.   
  10.     tree.setRootNode(root);  
  11.     tree.render();  
  12.   
  13.     root.expand();  
  14. });  

data.txt 
Java代码   收藏代码
  1. [  
  2.     {text:'01',children:[  
  3.         {text:'01-01',leaf:true},  
  4.         {text:'01-02',children:[  
  5.             {text:'01-02-01',leaf:true},  
  6.             {text:'01-02-02',leaf:true}  
  7.         ]},  
  8.         {text:'01-03',leaf:true}  
  9.     ]},  
  10.     {text:'02',leaf:true}  
  11. ]  


ajax读取 
Js代码   收藏代码
  1. Ext.onReady(function(){  
  2.   
  3.     var tree = new Ext.tree.TreePanel({  
  4.         el: 'tree',  
  5.         loader: new Ext.tree.TreeLoader({dataUrl: 'data.jsp'})  
  6.     });  
  7.   
  8.     var root = new Ext.tree.AsyncTreeNode({  
  9.         id: '0',  
  10.         text:'root'  
  11.     });  
  12.   
  13.     tree.setRootNode(root);  
  14.     tree.render();  
  15.   
  16.     root.expand(falsefalse);  
  17. });  

Html代码   收藏代码
  1. <%@ page contentType="text/html;charset=utf-8"%>  
  2. <%  
  3.     request.setCharacterEncoding("UTF-8");  
  4.     response.setCharacterEncoding("UTF-8");  
  5.   
  6.     // 对应的是正在展开的节点id  
  7.     String node = request.getParameter("node");  
  8.     System.out.println(node);  
  9.   
  10.     String content = "";  
  11.     if ("0".equals(node)) {  
  12.         content += "[{id:1,text:'节点阿一'},{id:2,text:'节点阿二'}]";  
  13.     } else if ("1".equals(node)) {  
  14.         content += "[{id:11,text:'节点阿一一',leaf:false},{id:12,text:'节点阿一二',leaf:true}]";  
  15.     } else if ("2".equals(node)) {  
  16.         content += "[{id:21,text:'节点阿二一',leaf:true},{id:22,text:'节点阿二二',leaf:true}]";  
  17.     } else if ("11".equals(node)) {  
  18.         content += "[{id:111,text:'节点阿一一一',leaf:true},{id:112,text:'节点阿一一二',leaf:true}]";  
  19.     }  
  20.   
  21.     response.getWriter().print(content);  
  22. %>  

注意:ajax默认使用utf-8编码格式,所以我们的jsp也要使用utf-8编码发送数据。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值