`

Extjs tree的相关组件及属性

阅读更多
Ext.tree.TreePanel

      主要配置项:
            root:树的根节点。
            rootVisible:是否显示根节点,默认为true。
            useArrows:是否在树中使用Vista样式箭头,默认为false。
            lines:是否显示树线,默认为true。
            loader:树节点的加载器,默认为Ext.tree.TreeLoader。
            selModel:树的选择模式,默认为Ext.tree.DefaultSelectionModel。
            pathSeparator:树节点路径的分隔符,默认为“/”。
            singleExpand:是否一次只展开树中的一个节点,默认为true。
            requestMethod:请求方法,可选值有POST、GET。
            containerScroll:是否将树形面板注册到滚动管理器ScrollManager中。

      主要方法:
            collapseAll():收缩所有树节点
            expandAll():展开所有树节点
            getRootNode():获取根节点
            getNodeById(String id):获取指定id的节点
            expand( [Boolean deep], [Boolean anim], [Function callback], [Object scope] )
            expandPath( String path, [String attr], [Function callback] )
            getChecked( [String attribute], [TreeNode startNode] )
            selectPath( String path, [String attr], [Function callback] )
            getSelectionModel():

Ext.data.Node
     主要配置项:
            id:节点id
            leaf:当前节点是否为叶子节点
      主要属性:
            id:节点id
            attributes:节点属性的集合
            parentNode:当前节点的父节点
            childNodes:当前节点所有子节点组成的数组
            firstChild:当前节点的第一个直接子节点,如果没有则为null值
            lastChild:当前节点的最后一个直接子节点,如果没有则为null值
            nextSibling:当前节点的下一个兄弟节点,如果没有则为null值
            previousSibling:当前节点的前一个兄弟节点,如果没有则为null值
 
      主要方法:
            appendChild( Node/Array node ):追加新的子节点
            bubble( Function fn, [Object scope], [Array args] ):从当前节点开始向上迭代调用指定函数,如果指定函数返回false则将终止迭代。
                  args:传入函数中的参数,默认为当前节点
            cascade( Function fn, [Object scope], [Array args] ):从当前节点开始向下迭代调用指定函数,如果指定函数返回false则将终止迭代。
            contains( Node node ):当前节点是否包含指定子节点。
            eachChild( Function fn, [Object scope], [Array args] ):迭代当前节点的所有子节点调用指定函数,如果指定函数返回false则将终止迭代。
            findChild( String attribute, Mixed value ):查找具有指定属性的第一个子节点。
            findChildBy( Function fn, [Object scope] ):根据自定义函数查找第一个符合要求的子节点,如果自定义函数返回true则说明匹配成功。
            getDepth():取得当前节点的深度,根节点的深度为0
            getOwnerTree():取得当前节点所在树。
            getPath( [String attr] ):取得当前节点对应的路径,这个路径在程序中可用于展开或者选择节点。
                   attr:用于查找路径的属性,默认为节点id
            hasChildNodes():是否有子节点
            indexOf( Node node ):取得指定子节点的索引值,未找到返回-1。
            insertBefore( Node node, Node refNode ):在当前节点的指定子节点之前插入一个新的子节点。
                  node:要插入的新节点

            isAncestor( Node node ):判断指定节点是否为当前节点的父节点(可以是任何一级中的父节点)。
            isFirst():是否为父节点的第一个子节点。
            isLast():是否为父节点的最后一个子节点。
            isLeaf():是否为叶子节点。
            item( Number index ):取得指定索引的子节点。
            remove():从父节点中删除当前节点。
            removeChild( Node node ):删除当前节点的指定子节点。
            replaceChild( Node newChild, Node oldChild ):用新的子节点替换当前节点的指定子节点。
            sort( Function fn, [Object scope] ):用指定的排序函数为当前节点的子节点进行排序。

Ext.tree.TreeNode
      主要配置项:
            text:节点上的文本信息
            qtip:节点上的提示信息
            icon:节点图标对应的路径
            iconCls:应用到节点图标上的样式
            checked:当前节点的选择状态
                  true:在节点前显示一个选中状态的复选框
                  false:在节点前显示一个未选中状态的复选框
                  不指定该值:不显示任何复选框
            href:节点的连接属性,默认为#
            hrefTarget:显示节点连接的目标框架
            editable:是否允许编辑,默认为true
            expanded:是否展开节点,默认为false
            disabled:是否禁用节点,默认为false
            singleClickExpand:是否通过单击方式展开节点
            allowChildren:是否允许当前节点具有子节点,默认为true
            expandable:当不含子节点时,是否总显示一个加减图标,默认为false
            uiProvider:节点的UI类,默认为Ext.tree.TreeNodeUI

      主要属性:
            text:节点上的文本信息
            disabled:当前节点是否被禁用
 
      主要方法:
            collapse( [Boolean deep], [Boolean anim], [Function callback], [Object scope] ):收缩当前节点
            deep:是否级联收缩全部子节点
            collapseChildNodes( [Boolean deep] ):收缩所有子节点
            disable():禁用当前节点
            enable():启用当前节点
            ensureVisible( [Function callback], [Object scope] ):确保所有父节点都是展开的
            expand( [Boolean deep], [Boolean anim], [Function callback], [Object scope] ):展开当前节点
            expandChildNodes( [Boolean deep] ):展开所有子节点
            isExpanded():当前节点是否展开
            isSelected():当前节点是否被选中
            select():选择当前节点
            setText( String text ):设置当前的文本
            toggle():切换当前节点的展开和收缩状态
            unselect():取消对当前节点的选择
            getUI():取得节点的UI对象

Ext.tree.AsyncTreeNode
      主要配置项:
            loader:当前节点的树加载器,默认使用树中配置的树加载器
 
      主要方法:
            isLoaded():当前节点是否已经加载数据
            reload( Function callback, [Object scope] ):重新加载节点数据,并调用回调函数

Ext.tree.TreeNodeUI
      主要方法:
            getAnchor():从节点的UI中获取焦点的<a>元素
            getIconEl():获取图标的<img>元素
            getTextEl():获取文本节点
            addClass( String/Array className ):
            removeClass( String/Array className ):
            hide():
            show():
            isChecked():取得节点的选择状态,如果当前节点没有复选框则函数返回false
            toggleCheck( Boolean (optional) ):设置节点复选框的选择状态


Ext.tree.DefaultSelectionModel
      是TreePanel的默认选择模式,该模式一次只能选择树中的一个节点。

      主要方法:
            clearSelections():清除对树中所有节点的选择
            getSelectedNode():取得当前被选中的节点
            isSelected( TreeNode node ):节点是否被选中
            select( TreeNode node ):选中指定节点
            unselect( TreeNode node ):取消指定节点的选中状态
            selectNext():选择当前被选节点的下一个节点
            selectPrevious():选择当前被选节点的上一个节点

Ext.tree.MultiSelectionModel
      是TreePanel的多选择模式,该模式一次可以选择树中的多个节点。

      主要方法:
            clearSelections():清除所有节点的选中状态
            getSelectedNodes():取得被选节点组成的数组
            isSelected( TreeNode node ):节点是否被选中
            select( TreeNode node, [EventObject e], Boolean keepExisting ):选中指定节点
            unselect( TreeNode node ):取消指定节点的选中状态

Ext.tree.TreeLoader
      提供了对子节点的延时加载功能,请求指定的URL地址,返回子节点数据,返回的数据格式如下:
[{
	id: 1,
	text: "node1",
	leaf: true,
	check: false
	}
	,{id: 2,
	text: "node2",
	children: [{
				 id: 3,
				 text: "node3",
				 leaf: true
				}]
}]

      树节点展开时,当前节点的id会作为请求参数被发送到服务器,在服务器可以通过node参数名进行获取。

      主要配置项:
            dataUrl:获取子节点的URL地址。
            baseAttrs:子节点的基本属性对象,该对象中的属性将被添加到树加载器创建的所有子节点上。优先服务器返回的同名属性值。
            baseParams:基本的请求参数,这些参数会被附加到每一个节点的请求中。
            clearOnLoad:在加载前是否移除已存在的子节点,默认为true。
            preloadChildren:在第一次加载子节点后是否递归加载所有子节点。
            requestMethod:请求方法,可选值有POST、GET。
            uiProviders:加载器创建子节点的UI实现类。
            url:与dataUrl作用相同。

      主要方法:
            load( Ext.tree.TreeNode node, Function callback, (Object) scope ):从指定的URL加载树节点。
            node:需要加载子节点的树节点。

Ext.tree.TreeEditor
      主要配置项:
            alignment:对齐方式。
            editDelay:两次点击节点触发编辑操作的延时时间,默认为350毫秒。
            hideEl:在显示编辑器组件时是否隐藏绑定元素。
            maxWidth:编辑器的最大宽度,默认为250。

Ext.tree.TreeSorter
      主要配置项:
            property:用于排序的节点属性名,默认为text。
            dir:排序方向,可选值有asc、desc,默认为asc。
            caseSensitive:是否区分大小写,默认为false。
            folderSort:叶节点是否排在非叶节点之下,默认为false。
            leafAttr:叶子节点在folder排序时的值,默认为leaf。
            sortType:一个自定义函数用于在排序前转换节点值。

分享到:
评论

相关推荐

    extjs的tree的使用

    在深入探讨ExtJS中Tree组件的使用之前,我们先来了解一下ExtJS本身。ExtJS是一个用JavaScript编写的开源前端框架,旨在帮助开发者构建复杂、高性能的Web应用程序。它提供了丰富的UI组件库,其中包括Tree(树形)组件...

    extjs 树型分页组件

    在EXTJS中,树型组件(Tree)是一种常见的数据展示方式,特别适合于层次结构明显的数据组织。然而,当树节点数量庞大时,一次性加载所有数据不仅会消耗大量的系统资源,也会导致用户界面响应变慢,用户体验下降。...

    ExtJs Tree

    根据给定的信息,我们可以深入探讨ExtJs中Tree组件的相关知识点,包括其定义、特性以及具体的配置选项等。 ### ExtJs Tree概述 ExtJs Tree是一种基于ExtJs框架的树形控件,它允许开发者构建出复杂的数据层次结构。...

    extjs tree 异步加载树型

    ExtJS Tree 是一个基于 ExtJS 框架的组件,用于构建可交互的、层级结构的树形控件。在 Web 开发中,它经常被用来展示目录结构、组织架构或者复杂的分类数据。异步加载树型是 ExtJS Tree 的一个重要特性,允许只在...

    动态加载extjs tree

    ExtJS Tree是Ext JS库中的一个组件,用于创建和展示层次结构的数据,通常表现为树形结构。这个组件在Web应用程序中广泛使用,特别是在需要管理有层级关系的数据时,如文件系统、组织架构或者导航菜单等。动态加载是...

    Extjs树分页组件扩展

    在ExtJS中,树形(Tree)组件是一种用于展示层级数据的强大工具,它允许用户以树状结构浏览和操作数据。然而,在处理大量数据时,一次性加载所有节点可能导致页面响应变慢,这时就需要引入分页功能。"Extjs树分页...

    Extjs Tree + JSON + Struts2 例子

    首先,让我们了解 ExtJS 树形组件(Tree)的工作原理。ExtJS Tree 需要的数据结构是一个 JSON 数组,每个元素代表树的一个节点。节点可以包含属性如 "cls"(样式类)、"id"(唯一标识)、"leaf"(是否为叶子节点)...

    extjs tree

    总结一下,ExtJS Tree是一个强大且灵活的组件,它提供了丰富的功能和良好的用户体验,适用于展示和管理层级关系的数据。通过配置TreeStore、TreePanel以及相应的事件处理,我们可以实现后台经典显示,动态加载等特性...

    extjs tree 学习资料

    这个压缩包“extjs tree 学习资料”显然是为那些希望深入理解并掌握ExtJS Tree组件的开发者准备的。让我们详细探讨一下ExtJS Tree的相关知识点。 1. **ExtJS Tree的基础概念** - **节点(Nodes)**:Tree的核心是...

    ExtJs4 Checkbox tree

    下面将详细介绍ExtJs4 Checkbox Tree的相关知识点。 1. **ExtJs框架**: ExtJs是一个强大的JavaScript库,用于构建富客户端应用程序。它提供了丰富的组件库、布局管理、数据绑定机制以及强大的API,使得开发者能够...

    extjs-tree.zip_extjs tree

    ExtJS Tree是一个强大的JavaScript库,专门用于创建交互式的树形结构。这个"extjs-tree.zip"文件包含了使用Java编写的ExtJS异步树形控件的示例代码,旨在帮助开发者快速理解和应用这一功能。ExtJS是Sencha公司开发的...

    带复选框的 ExtJs tree

    在给定的文件中,我们关注的是“带复选框的ExtJS tree”这一主题,这涉及到ExtJS框架下的树形组件(TreePanel)如何与复选框结合,为用户提供更为灵活的数据选择和管理方式。 ### 标题解析:“带复选框的ExtJS tree...

    extjs ajax tree(js动态树,无需递归)

    ExtJS AJAX Tree是一种基于JavaScript的动态树形结构,它利用AJAX技术来异步加载节点数据,无需在服务器端生成完整的树结构。这种方式可以显著提高页面加载速度,尤其是在处理大量数据时。ExtJS是一个功能丰富的...

    extjs tree 节点 链接 新窗口

    总的来说,ExtJS中的Tree组件提供了丰富的功能来处理节点的链接和数据加载,而Store组件则为数据管理提供了强大的支持,它们共同构建了ExtJS应用程序的数据交互基础。理解和熟练掌握这些概念和技术,对于开发复杂的...

    Extjs tree and Grid(Buffer Grid,Progress Grid)

    在"Extjs tree and Grid(Buffer Grid,Progress Grid)"这个主题中,我们将深入探讨这两个核心组件以及它们的特定变体——缓冲网格(Buffer Grid)和进度网格(Progress Grid)。 1. **ExtJS Tree** - 树形控件...

    struts2与extjs tree的完美结合

    在ExtJS Tree组件中,每个节点都是一个包含父节点、子节点及各种属性的对象。通过调用其API,可以实现添加、删除、展开、折叠节点等操作。结合Struts2,开发者可以在后端处理业务逻辑,根据需求动态生成这些节点,...

    extjs tree2

    1. **ExtJS Tree组件**: - 树形控件是ExtJS库中的一个核心组件,用于展示层次结构的数据,如文件系统、组织结构等。 - 它提供了丰富的功能,包括节点的展开与折叠、拖放操作、异步加载、复选框支持等。 2. **...

    ExtJs_TreeDemo

    树形菜单(Tree)是ExtJs中的一个重要组件,它允许用户以层级结构展示数据,广泛应用于文件系统、组织结构或者导航菜单等场景。"ExtJs_TreeDemo"是一个示例,展示了如何在ExtJs中实现树形菜单的功能。 在ExtJs中,...

    extjs tree + json+struts2示例源代码

    本示例将详细介绍如何结合ExtJS的Tree组件、JSON数据格式以及Struts2框架,构建一个动态的树形结构展示系统。 首先,我们要理解ExtJS Tree组件。它是一种可扩展的树状视图,用于展示层次结构的数据。在ExtJS中,...

    ExtJS4.2 tree 级联选择

    在ExtJS库中,Tree组件允许我们展示和操作数据以树形结构显示,而级联选择功能则意味着当用户选择一个节点时,它的所有子节点也会被自动选中,反之亦然,如果取消选中父节点,其所有子节点也将被取消选中。...

Global site tag (gtag.js) - Google Analytics