`

ExtJs TreePanel的管理

 
阅读更多
if(me.paramObj.addType=="addNext"){//标准分类添加下一级
											  //设置父节点为非叶子节点
											  var nodeData = node.data;
											  nodeData.leaf = false;
											  node.updateInfo(true, nodeData);
											  //展开当前node
									          var store=tree.getStore();
								              store.load({node:node});
										  }else if(me.paramObj.addType=="addNow"){//标准分类添加同级
											  //展开父级node
											  var store=tree.getStore();
								              store.load({node:node.parentNode});
								              //再选中当前节点
								              tree.getSelectionModel().select(node);
										  }else{
											  if(me.controlType=='treeEdit'){//修改标准分类
												  //更新当前选中的node名称
												  var nodeData = node.data;
					                              nodeData.text = data.name;//取得后台返回的修改后的名称
					                        	  node.updateInfo(true, nodeData);
											  }
	  }

 发现有时候新添加的noded的parentNode=null。很无语,后来改成appendChild函数,不用节点的局部刷新了。

新做的代码如下:

if(me.paramObj.addType=="addNext"){//标准分类添加下一级
											  //设置父节点为非叶子节点
								              var newnode = {
								                  id:data.id,
								                  text:data.text,
								                  iconCls:"icon-note",
								                  leaf:true
								              };
				                              node.appendChild(newnode);
				                              node.expand();
										  }else if(me.paramObj.addType=="addNow"){//标准分类添加同级
											  var newnode = {
									                  id:data.id,
									                  text:data.text,
									                  iconCls:"icon-note",
									                  leaf:true
									              };
				                              node.parentNode.appendChild(newnode);										  
										  }else{
											  if(me.controlType=='treeEdit'){//修改标准分类
												  //更新当前选中的node名称
												  var nodeData = node.data;
					                              nodeData.text = data.text;//取得后台返回的修改后的名称
					                        	  node.updateInfo(true, nodeData);
											  }
										  }

 

分享到:
评论

相关推荐

    extjs TreePanel

    EXTJS中的TreePanel是用于展示层级数据的组件,它以树状结构呈现数据。TreePanel提供了丰富的配置项和方法,使得我们可以灵活地控制树的显示和交互。以下是对TreePanel及其主要配置项和方法的详细说明: 1. **主要...

    ExtJS_TreePanel_树的配置详细属性

    主要方法: collapseAll():收缩所有树节点 expandAll():展开所有树节点 getRootNode():获取根节点 getNodeById(String id):获取指定id的节点 expand( [Boolean deep], [Boolean anim],

    extjs中Ext.Panel和TreePanel 组件动态加载本地页面数据

    在EXTJS这个强大的JavaScript框架中,`Ext.Panel`和`TreePanel`是两个非常重要的组件,它们被广泛用于构建复杂的用户界面。这篇文章将探讨如何在这些组件中动态加载本地页面数据,以提升用户体验并实现灵活的数据...

    Extjs入门教程(treePanel和GridPanel)

    总的来说,这门入门教程将带你进入ExtJS的世界,通过TreePanel和GridPanel的实践,你将掌握基本的组件使用和数据管理技巧,为构建更复杂的企业级应用打下基础。记得在实践中不断探索和实验,理论结合实际,才能真正...

    Extjs4 treePanel节点刷新JS函数

    完美的Extjs4 treePanel节点刷新,函数为自动刷新选中的节点.API看得头疼才别出来的代码.截止我发之前,好像没有谁共享这个功能的函数吧.

    ExtJs TreePanel应用

    ExtJs TreePanel是一种在Web应用程序中用于展示层次结构数据的强大组件。它被广泛应用于构建具有树状结构的导航菜单、文件系统目录视图或者组织结构图。TreePanel结合了丰富的功能和灵活的定制性,使其成为ExtJs框架...

    extjs4 treepanel动态改变行高度示例

    在本文中,我们将探讨ExtJS 4框架中的TreePanel组件如何动态地改变行高。TreePanel是ExtJS中用于展示树形结构...通过这些方式,确保即使在复杂的项目中,也能保证TreePanel组件的动态行高度调整功能易于理解和管理。

    Extjs做的treepanel+tab切换页

    6. **页面布局**:整个页面可能使用了ExtJS 的布局管理器,如`border`布局,将页面分为左侧和右侧两部分,左侧是TreePanel,右侧是可折叠的TabPanel。 7. **URL 链接处理**:`嘉瑞传播.url`可能是一个树节点的`href...

    EXTJS实例 EXTJS树,可以编辑的EXTJS,EXTJS3.0

    在EXTJS3.0中,树形组件(TreePanel)提供了丰富的可编辑性,允许用户不仅查看数据,还能直接编辑节点内容。这大大增强了用户体验,使得交互性更强。编辑功能通常包括添加新节点、删除现有节点、修改节点文本以及...

    ExtJS4 treepanel与girdpanel简单案例(包括MVC模式与非MVC模式)

    用ExtJS4实现的treepanel与gridpanel的简单互动案例 包含mvc开发模式与普通开发模式两种 普通开发模式:需要在引入js文件夹中的main.js文件 mvc开发模式:需要引入app文件夹中的app.js文件 适合初学extjs4的朋友

    ExtJS 3.4关于TreePanel的一些实例

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

    无废话ExtJs 系列教程十五[树:TreePanel]

    《无废话ExtJs系列教程十五:树:TreePanel》 ExtJs是一个强大的JavaScript库,用于构建富客户端Web应用。在本教程中,我们将深入探讨一个重要的组件——TreePanel,它是ExtJs用来展示层次结构数据的工具,常用于...

    关于extjs treepanel复选框选中父节点与子节点的问题

    在EXTJS中,TreePanel是一种常用的组件,用于展示层次结构的数据,例如文件系统或组织结构。在本例中,我们关注的是如何实现一个带有复选框的TreePanel,以便在选中父节点时自动选中所有子节点,而只有当所有子节点...

    获取Extjs中的TreePanel中所有的被checked的叶子节点的id

    在本篇文章中,我们将深入探讨如何在ExtJS框架中获取TreePanel中所有被选中(checked)的叶子节点的ID。此技术对于处理复杂的数据结构、优化用户交互体验以及实现高效的数据管理至关重要。 ### 一、ExtJS简介 ...

    Extjs开发之对于TreePanel的MultiSelectionModel重置不起作用

    在EXTJS开发中,TreePanel是用于展示层级结构数据的组件,它经常被用来构建文件系统或者组织结构等。在处理TreePanel时,我们可能会遇到一个常见问题:当尝试使用MultiSelectionModel(多选模型)重置选中的节点时,...

    Extjs 提示和正则表达式

    在JavaScript框架ExtJS中,正则表达式也经常被用于验证用户输入数据的合法性,例如表单字段的验证。下面我们将深入探讨正则表达式的基本概念以及在ExtJS中的应用。 一、正则表达式基础 1. **基本元素**:正则...

    extjs 写的动态加载、增删改查、拖拽Tree(完整版)

    动态加载、增删改查和拖拽功能是ExtJS TreePanel的重要特性,这些功能使得开发者可以创建出功能完备的数据管理界面。 首先,让我们详细了解一下动态加载(Dynamic Loading)。在大型数据集的情况下,一次性加载所有...

    extjs4.0.7后台管理框架

    EXTJS4.0.7提供了TreePanel组件,允许开发者创建可扩展、可搜索、可拖放的树形结构,这在后台管理系统中常用于展现层级关系的数据,如部门结构、文件目录等。通过Ajax或Store的数据绑定,可以实现树节点的动态加载和...

Global site tag (gtag.js) - Google Analytics