1.创建一个简单(静态)的树 Java代码 /** 创建一个简单(静态)的树 */ function createSimpleTreePanel(){ //因为每个树中由N个节点组成的,所以要创建树,必须创建树所包含的节点(树必须有一个或多个根节点). var vRoot = new Ext.tree.TreeNode({text: '根节点1'}) ;//创建节点 var vNode1 = new Ext.tree.TreeNode({text: '子节点1'}) ;//创建节点 vNode1.appendChild(new Ext.tree.TreeNode({text: '子节点11'})); vNode1.appendChild(new Ext.tree.TreeNode({text: '子节点12'})); var vNode2 = new Ext.tree.TreeNode({text: '子节点1'}) ;//创建节点 vRoot.appendChild(vNode1) ;//在vRoot根节点上创建子节点. vRoot.appendChild(vNode2) ;//在vRoot根节点上创建子节点. var vTree = new Ext.tree.TreePanel({//创建一个用于装载树的面板 renderTo: document.body,//绑定在body元素上. width: 300, height: 200, root: vRoot }); } 2.创建异步简单树 Java代码 /** 创建异步简单树 */ function createSimpleTreeLoader(){ //创建一个由treeLoader.js定义的节点结构[{...},{...}] var vNode = new Ext.tree.TreeLoader({url:'../js/treeLoader.js'}); //创建一个根节点,将上面定义的子节点结构与根节点绑定. var vRoot = new Ext.tree.AsyncTreeNode({text: '根节点',loader: vNode}) ; var vTree = new Ext.tree.TreePanel({//创建一个用于装载树的面板 renderTo: document.body,//绑定在body元素上. width: 300, height: 200, root: vRoot//绑定根节点. }); } 3.创建动态(从JSP文件动态载入)树 Java代码 /** 创建动态(从JSP文件动态载入)树 */ function createSimpleDynamicTreeLoader(){ //创建一个节点,节点的结构由JSP文件提供 var vNode = new Ext.tree.TreeLoader({url:'treeLoader.jsp'}); //为该节点添加beforeload(点击节点之前触发)事件监听器. vNode.on("beforeload",function(myLoader,node){ //myLoader.baseParams.parentId是为treeLoader.jsp传递参数,参数名为parentId,可以自己取名.node代表正要点击的节点对象 myLoader.baseParams.parentId = node.id=='root'?"":node.text; }) ; var vRoot = new Ext.tree.AsyncTreeNode({id: 'root',text: '根节点',loader: vNode}) ; var vTree = new Ext.tree.TreePanel({//创建一个用于装载树的面板 renderTo: document.body,//绑定在body元素上. width: 300, height: 200, root: vRoot//绑定根节点. }); } 4.用到的文件 treeLoader.js Java代码 [{text:'子节点1'},{text:'子节点2',leaf:true}] 5.用到的文件 treeLoader.jsp Java代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% String parentId = request.getParameter("parentId") ; System.out.println(parentId) ; if("".equals(parentId) || parentId==null){ out.print("[{text:\'北京\'},"+"{text:'辽宁'}]"); }else if("北京".equals(parentId)){ out.print("[{text: \'朝阳\',leaf: true},"+"{text: '东城',leaf: true}]"); }else if("辽宁".equals(parentId)){ out.print("[{text: \'沈阳\',leaf: true},"+"{text: '大连',leaf: true}]"); } %> 6.载入 Java代码 //Ext.onReady(createSimpleTreePanel);//创建一个简单(静态)的树 //Ext.onReady(createSimpleTreeLoader);//创建异步简单树 Ext.onReady(createSimpleDynamicTreeLoader);//创建动态树
相关推荐
完美的Extjs4 treePanel节点刷新,函数为自动刷新选中的节点.API看得头疼才别出来的代码.截止我发之前,好像没有谁共享这个功能的函数吧.
主要方法: collapseAll():收缩所有树节点 expandAll():展开所有树节点 getRootNode():获取根节点 getNodeById(String id):获取指定id的节点 expand( [Boolean deep], [Boolean anim],
用ExtJS4实现的treepanel与gridpanel的简单互动案例 包含mvc开发模式与普通开发模式两种 普通开发模式:需要在引入js文件夹中的main.js文件 mvc开发模式:需要引入app文件夹中的app.js文件 适合初学extjs4的朋友
《无废话ExtJs系列教程十五:树:TreePanel》 ExtJs是一个强大的JavaScript库,用于构建富客户端Web应用。在本教程中,我们将深入探讨一个重要的组件——TreePanel,它是ExtJs用来展示层次结构数据的工具,常用于...
TreePanel是ExtJS中用于展示树形结构数据的组件,它通常用于显示文件系统结构、组织架构等层次化数据。动态改变行高是提高用户界面友好性和可视化的有效方式,尤其是在呈现大量信息时,可以提升用户体验。 首先需要...
学习TreePanel时根据网上的资料自己实现的实例,结构如下: 1. 创建一棵树 2. 使用TreeLoader加载数据生成树 3. 读取本地Json数据生成树 4. 使用Servlet提供数据 5. 树的事件 6. 右键菜单 7. 修改节点的默认图标 8. ...
在EXTJS3.0中,树形组件(TreePanel)提供了丰富的可编辑性,允许用户不仅查看数据,还能直接编辑节点内容。这大大增强了用户体验,使得交互性更强。编辑功能通常包括添加新节点、删除现有节点、修改节点文本以及...
2. **TreePanel组件**:EXTJS中的树形控件是通过TreePanel组件实现的。TreePanel包含了渲染树形结构所需的配置项,如store、root、displayField等。 3. **TreeStore**:存储树形数据的仓库,它负责加载和管理树形...
在"Extjs 做的treepanel+tab切换页"这个项目中,我们主要关注的是如何利用ExtJS 3.2版本来创建一个具备折叠面板(Collapsible Panel)功能的树形视图(TreePanel),以及与之联动的选项卡(TabPanel)。这个设计允许...
TreePanel是ExtJS中的一个树形控件,它允许你展示层级结构的数据。在教程中,你可能会学到如何创建和配置TreePanel,包括加载数据、设置节点图标、处理节点的展开和折叠事件,以及添加拖放功能。TreePanel通常用于...
1. **TreePanel**:TreePanel是ExtJS中用于展示树形结构的组件,它可以显示可折叠/展开的节点,每个节点可以有子节点。配置TreePanel时,我们需要指定数据源、节点模型、以及各种UI样式和行为设置。 2. **数据源**...
在本篇文章中,我们将深入探讨如何在ExtJS框架中获取TreePanel中所有被选中(checked)的叶子节点的ID。此技术对于处理复杂的数据结构、优化用户交互体验以及实现高效的数据管理至关重要。 ### 一、ExtJS简介 ...
EXTJS中的TreePanel是用于展示层级数据的组件,它以树状结构呈现数据。TreePanel提供了丰富的配置项和方法,使得我们可以灵活地控制树的显示和交互。以下是对TreePanel及其主要配置项和方法的详细说明: 1. **主要...
在EXTJS这个强大的JavaScript框架中,`Ext.Panel`和`TreePanel`是两个非常重要的组件,它们被广泛用于构建复杂的用户界面。这篇文章将探讨如何在这些组件中动态加载本地页面数据,以提升用户体验并实现灵活的数据...
总结来说,EXTJS动态树支持checkbox全选是一个结合了EXTJS TreePanel组件、数据模型、事件处理和异步加载技术的功能实现,旨在提供用户友好的多选操作。通过这个功能,开发者可以构建出更加交互性强、功能丰富的Web...
在给定的“Extjs树Demo”中,我们将探讨如何使用ExtJS实现树形结构,这是一种常见的数据可视化方式,用于表示层次结构的数据。 首先,理解ExtJS中的树(Tree)组件是非常重要的。这个组件允许开发者创建可交互、多...
在树形框架中,ExtJS的TreePanel组件是核心,它允许开发者构建可交互、可扩展的树状结构,展示层次化的数据。这个例子可能展示了如何配置TreePanel,加载数据,以及处理用户交互事件。 2. **Oracle数据库**:Oracle...
TreePanel 是 ExtJS 中用于展示树形结构数据的组件,而 CheckBox 是复选框,用于在界面上提供一个多选的选项。在 ExtJS 中,TreePanel 与 CheckBox 结合使用是一种常见的场景,其中的 CheckBox 可以用来控制树节点的...