`
xuwenjin666
  • 浏览: 46662 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

(转)Extjs TreePanel 拖拽 ,节点为leaf=true 不能拖拽解决办法

 
阅读更多

Ext.TreePanel有一个默认的控制,就是在允许拖放节点的时候,我们只能将节点拖放到 leaf = false 的节点下,而拖放节点到 leaf = true的节点的时候,界面上不出现节点被选定的状态。其结果是不管我们怎么拖动,都无法在一个叶子节点上做Append操作。

       以下的代码是写在 nodedragover事件中的,当节点拖放时,我们对目标节点做一个判断,if (e.target.leaf) ,如果证明是叶子节点,将该节点leaf属性 置为false。哈哈,这个问题就绕过去。


"nodedragover" : function(e) {
   var node = e.target;
   if (node.leaf)
     node.leaf = false;
   return true;
}

 

原文章:http://blog.csdn.net/josephlee0717/article/details/5827199

分享到:
评论

相关推荐

    Extjs4 treePanel节点刷新JS函数

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

    Extjs动态树的实现以及节点拖拽

    在ExtJS 3.1版本中,默认情况下,节点不能被拖放到叶子节点上。这是因为树的默认配置限制了这种行为。为解决这个问题,我们需要监听`nodedragover`事件,并在事件处理器中临时修改叶子节点的属性,使其能够接受拖放...

    extjs TreePanel

    - **leaf**: 指示该节点是否为叶子节点,即没有子节点。 - **主要属性**: - **id**: 节点的ID。 - **attributes**: 节点的属性集合,包含额外的数据信息。 - **parentNode**: 父节点对象。 - **childNodes**:...

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

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

    Extjs入门教程(treePanel和GridPanel)

    6. 用户交互:实现拖放功能,允许用户通过拖动TreePanel的节点来调整结构,或者拖放到GridPanel中进行操作。 在"我自己写的Extjs入门教程"这个压缩包中,可能包含的文件可能有HTML示例文件、JavaScript代码文件、...

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

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

    ExtJS_TreePanel_树的配置详细属性

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

    ExtJs TreePanel应用

    4. **foldersOnly**: 如果设置为true,只显示具有子节点的节点(即“leaf”属性为false的节点)。 5. **tools**: 可以添加自定义工具栏按钮,增强交互功能。 6. **columns**: 可以定义列来显示额外的信息,每个列都...

    Extjs做的treepanel+tab切换页

    在"Extjs 做的treepanel+tab切换页"这个项目中,我们主要关注的是如何利用ExtJS 3.2版本来创建一个具备折叠面板(Collapsible Panel)功能的树形视图(TreePanel),以及与之联动的选项卡(TabPanel)。这个设计允许...

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

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

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

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

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

    在ExtJS框架中,TreePanel组件是用来展示层次化数据的一种常用方式。当TreePanel组件配置了复选框时,就会涉及到节点间复选状态的联动处理问题。也就是说,当用户操作某个节点的复选框时,需要根据一定的逻辑规则来...

    ExtJS 3.4关于TreePanel的一些实例

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

    extjs4 treepanel动态改变行高度示例

    在本文中,我们将探讨ExtJS 4框架中的TreePanel组件如何动态地改变行高。TreePanel是ExtJS中用于展示树形结构数据的组件,它通常用于显示文件系统结构、组织架构等层次化数据。动态改变行高是提高用户界面友好性和...

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

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

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

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

    当设置lazy=true时,怎样使用extjs和Hibernate

    在IT行业中,ExtJS是一个广泛使用的JavaScript库,用于构建富客户端Web应用程序,而Hibernate则是一个Java持久层框架,用于简化数据库操作。当我们设置Hibernate中的实体属性`lazy=true`时,这是懒加载(Lazy ...

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

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

    ExtJS原生多文件拖动上传组件

    ExtJS原生多文件拖动上传组件 使用时修改包路径 1.多文件上传 2.支持拖动上传 3.支持图片压缩 4.支持图片合并 5.文件排序 可扩展实时图片预览 api //初始化画板 initCanvas //上传文件窗口 uploadWindow //初始化...

Global site tag (gtag.js) - Google Analytics