`
hybxiaodao
  • 浏览: 244700 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

ext treepanel 实例

    博客分类:
  • Ext
阅读更多

在html的页面里的代码:

 

<div id="combotree" style="float:left;display:block;">
    	<!--先隐藏此树形-->
        <div id="divmodule" style="float:left;display:none;position: absolute;"></div>
    	<!--点击文本框的时候,显示树形结构 -->
        <input type="text" id="input_module" name="input_module" readonly onclick="document.getElementById('divmodule').style.display='block'">
       	<!-- 这个hidden用来向后台传数据 -->
        <input type="hidden" id="tomodule" name="tomodule">
</div>

 

下面是EXT 部分,

此部分代码放在 Ext.onReady(function(){ }); 里

var _Tree = Ext.tree;  
    // 定义根节点的Loader  
    var _treeloader = new _Tree.TreeLoader({  
            // dataUrl : 'tree.jsp'//这里可以不需要指定URL,在加载前事件响应里面设置  
            });  
    // 添加一个树形面板  
    var _treepanel = new _Tree.TreePanel({  
        // renderTo:"tree_div",//如果使用renderTo,则不能使用setRootNode()方法,需要在TreePanel中设置root属性。  
        el : 'divmodule',// 将树形添加到一个指定的div中,非常重要!  
        region : 'west',  
        title : '功能模块',  
        width : 200,//面板宽度  
        minSize : 180,  
        maxSize : 250,  
        split : true,  
        autoHeight : false,  
        frame : true,// 美化界面  
        // title : '可编辑和拖动的异步树',//标题  
        // autoScroll : true, // 自动滚动  
        enableDD : true,// 是否支持拖拽效果  
        containerScroll : true,// 是否支持滚动条  
        rootVisible : true, // 是否隐藏根节点,很多情况下,我们选择隐藏根节点增加美观性  
        border : true, // 边框  
        animate : true, // 动画效果  
        loader : _treeloader // 树加载  
        });  
          
        // 异步加载根节点  
       var _rootnode = new _Tree.AsyncTreeNode({  
                id : '0',  
                text : '请选择...',  
                draggable : false,// 根节点不容许拖动  
                expanded : true  
            });  
      // 为tree设置根节点  
      _treepanel.setRootNode(_rootnode);  
        
      // 响应加载前事件,传递node参数  
     _treepanel.on('beforeload', function(node) {  
           _treepanel.loader.dataUrl = 'getModuleList_dao.asp?id=' + node.id; // 定义子节点的Loader  
		});  
	 
  	_treepanel.on("append", function(a,b,node) {
		//根据实际情况来判定叶子节点
               //alert(node.getDepth());
		if (node.getDepth()==3)
		{
			node.leaf=true;
		}else{
			node.leaf=false;
		}
	});
    // 渲染树形  
    _treepanel.render();  
    // 展开节点,第一个参数表示是否级联展开子节点  
    _rootnode.expand(false);  
	//属性的点击时间
	 _treepanel.on('click', function(node,e){
		 if (!node.isLeaf()) {  //不是叶子节点,就stop
            e.stopEvent();  
		 }else{
			document.getElementById("divmodule").style.display="none"; //隐藏树形结构的div
			document.getElementById("input_module").value=node.text; //将选中的节点的显示的值赋予文本框
			document.getElementById("tomodule").value=node.id;//用hidden保存实际节点的id值
		}
	}); 


 

loader.dataurl 去获取需要的数据,本次实验中,用json格式的记录数据,数据格式:

[{id:"1",text:"AAA"},{id:"2",text:"BBB"}]

 

到此结束。如果有不懂地方可以参考:

http://youshini.iteye.com/blog/1072961

 

 

分享到:
评论

相关推荐

    treepanel实例

    里面已经包含了教程、示例代码、要用到的js脚本库和jar包,你随便改改就可以用在自己的项目里

    ExtJS 3.4关于TreePanel的一些实例

    学习TreePanel时根据网上的资料自己实现的实例,结构如下: 1. 创建一棵树 2. 使用TreeLoader加载数据生成树 3. 读取本地Json数据生成树 4. 使用Servlet提供数据 5. 树的事件 6. 右键菜单 7. 修改节点的默认图标 8. ...

    ext js mvc demo 实例

    ext js mvc 基本布局 以及菜单栏的点击事件 也是初学者 。

    Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码

    主要介绍了Extjs 中 Treepanel 实现菜单级联选中效果,需要的朋友可以参考下

    ExtJs入门实例

    目录 1. ExtJs2.0学习系列(1)--Ext.MessageBox 2. ExtJs2.0学习系列(2)--Ext.Panel 3. ExtJs2.0学习系列(3)--...14. ExtJs2.0学习系列(14)--Ext.TreePanel之第三式(可增删改的树) 15. ExtJs2.0学习系列(15)--extjs换肤

    EXTjs 简单布局实例

    menuTree:new Ext.tree.TreePanel({ title:'功能菜单', region:'west', bodyStyle:'background:transparent url(images/default/panel/group-lr.gif) repeat-x 0 bottom;', id:'extExample-tree', autoScroll:true, ...

    JavaScript的ExtJS框架中数面板TreePanel的使用实例解析

    一种节点是普通的简单树 节点,由Ext.tree.TreeNode定义,另外一种是需要异步加载子节点信息的树节点,该类由Ext.tree.AsyncTreeNode定 义。 在数据中, text 显示文字, leaf 节点 , children 子节点,expanded ...

    精通JS脚本之ExtJS框架.part1.rar

     《精通JS脚本之ExtJS框架》附有配套光盘,提供了书中实例的源代码和视频教学文件。此外,读者还可以通过访问itzcn网站来获得即时在线帮助。  《精通JS脚本之ExtJS框架》可以作为Web开发的自学参考书,也可以作为...

    extjs实例与学习资料

    因为前段时间有两个专案要用到extjs技术,所以自己学了一段...grid,tree,显示树信息的TreePanel、用于显示表格的GridPanel及EditorGridPanel,还有代表应用程序窗口的Ext.Window,与数据库交付,希望对初学者带来帮助

    ExtJS5-一个简洁完整的后台管理系统入门实例

    5、通过自定义一个Ext.button.Button的扩展类,演示了自定义扩展Ext类的基本方法; 6、使用JSON,模拟从后台动态获取数据; 7.放入webapp运行tomcat,,直接访问index.html即可访问,其他语言相同

    ExtJS5.0 树形菜单实例

    引用ExtJS5.0 实现一个树形菜单的后台管理demo

    精通JS脚本之ExtJS框架.part2.rar

     《精通JS脚本之ExtJS框架》附有配套光盘,提供了书中实例的源代码和视频教学文件。此外,读者还可以通过访问itzcn网站来获得即时在线帮助。  《精通JS脚本之ExtJS框架》可以作为Web开发的自学参考书,也可以作为...

    ExtJS4中文教程2 开发笔记 chm

    Extjs4 TreePanel实例 ExtJs4 动态加载 Extjs4 带复选框的树(Checkbox tree) Extjs4 新的布局方式 Extjs4 锁定表头(Locking Grid)功能 Extjs4.0 MVC实例 Extjs4.0动态填充combobox数据 Extjs4中up()和down()的用法...

    Sencha Architect2.2 入门教程

    该文档中包含两个入门实例配有截图,详细介绍了Sencha Architect 2.2 的使用方法,其中包括treePanel,和数据绑定的使用,还有图形绘制。

Global site tag (gtag.js) - Google Analytics