公司开发需要用到jquery的ZTREE,结合公司代码和网上的事例学习了下,写点总结希望以后能用上,随着学习慢慢补充吧。
ZTREE的官网例子和JS地址:http://code.google.com/p/jquerytree/。
首先,要在JSP中引入js文件和css文件
<script type="text/javascript" src="jquery.ztree-2.6.js"></script>
<link rel="stylesheet" href="zTreeStyle/zTreeStyle.css" type="text/css">
var zTree1;
var setting;
setting = {
editable: false,
checkable: false,
showIcon : false,
edit_renameBtn : false,
edit_removeBtn : false,
callback: {
//点击触发的方法
rightClick: zTreeOnRightClick,
mouseDown: zTreeOnMouseDown,
click: zTreeOnClick
}
};
方法:
function zTreeOnRightClick(event, treeId, treeNode) {
if (null == treeNode) {
return false;
}
var level = treeNode.level;
clickedId = treeNode.id;
if (level == 0) {
zTree1.selectNode(treeNode);
showRMenu("root", event.clientX, event.clientY);
} else if (level == 1) {
zTree1.selectNode(treeNode);
showRMenu("region", event.clientX, event.clientY);
} else if (level == 2) {
zTree1.selectNode(treeNode);
showRMenu("point", event.clientX, event.clientY);
} else if(level == 3) {
zTree1.selectNode(treeNode);
showRMenu("device", event.clientX, event.clientY);
}
}
节点:
var zNodes = [
{id:000, name:"监控点列表", open:true,
nodes: ${strTree}
• (json类型的数据格式是:id:””,nodes:[如果有和外边一样],name:””)
• 例子:
• [{"id":"1",
• "nodes":[ {"id":"1","nodes":[],"name":"mp1"},
{"id":"2","nodes":[],"name":"mp2"},
{"id":"3","nodes":[],"name":"mp3"}],
"name":"region1"},
{"id":"2",
"nodes":[ {"id":"4","nodes":[],"name":"mp4"},
{"id":"5","nodes":[],"name":"mp5"}],
"name":"region2"},
}
];
zTree1 = $("#treeDemo").zTree(setting, zNodes);
一、以下是ZTREE的一些常用的方法和方法返回值:
1、zTree.getNodes()
获取全部节点数据,不管是否采用简单数据模式(isSimpleData = true),都返回树形结构的 JSON 数据
[
{"id":1, "name":"test1", "nodes":[
{"id":11, "name":"test11", "nodes":[
{"id":111, "name":"test111"}
]},
{"id":12, "name":"test12"}
]},
......
];
2、zTree. getNodeByParam(key, value)
根据节点数据的属性精确搜索满足条件的的 JSON 数据对象,如果有多个同样属性值的节点,则只返回第一个找到的节点。
3、zTree.getNodesByParam(key, value, parentNode)
获取某个节点下key=value的节点数据。
4、zTree.getNodesByParamFuzzy(key, value[, parentNode])
根据节点数据的属性模糊搜索指定节点 parentNode 下面的子节点中key=value的 JSON 数据对象集合。当parentNode为空时,搜索全部节点。
5、zTree.addNodes(parentNode, newNodes, isSilent)
参数:
parentNode: 指定的父节点,如果增加根节点,请设置 parentNode 为 null 即可。
newNodes : Array(JSON)类型,需要增加的节点数据 JSON 对象集合,支持将节点的n级子节点一次性增加,只需要符合zTree的节点数据结构即可。
isSilent : Boolean类型,设定增加节点后是否展开其父节点。isSilent = true 时,不展开父节点,其他值或缺省状态都自动展开。
6、zTree.removeNode(treeNode)
删除某个节点。
7、zTree.getSelectedNode()
获取 zTree 当前被选中的节点数据 JSON 对象。
8、zTree.transformToArray(treeNodes)(这个方法我也不是很理解,感觉是将选定的节点转换成一个Array)
将 zTree 使用的标准格式转换为简单 Array 格式,便于将数据返回给后台
9、zTree.selectNode(treeNode)
选中某个节点。
10、zTree.getNodeByTId(tID)
根据某个节点数据的 tId 属性获取该获取该节点的 JSON 数据对象
11、 zTree.moveNode(targetNode, treeNode, moveType)
将某节点移动到其他节点下
targetNode :指定移动到的目标节点 JSON 数据,如果移入根节点,请设置 targetNode 为 null 即可
treeNode :指定被移动的节点 JSON 数据
moveType :指定移动到目标节点的相对位置("inner":成为子节点(默认值),"before":成为同级前一个节点,"after":成为同级后一个节点)
二、setting的属性:
1、 expandSpeed 展开、折叠效果 'fast'(default) 、 'slow'、 ''三种,其中 '' 表示展开、折叠效果关
2、 setting1.isSimpleData = false;
setting1.treeNodeKey = "id";
setting1.treeNodeParentKey = "pId";
isSimpleData = false时需要传json数据,=true时需要传array数据
3、showLine 是否显示节点之间的连线。
4、editable 是否允许节点移动。
5、dragCopy 拖拽节点时进行复制。
6、dragMove 拖拽节点时进行移动。
三、事件监控
1、 beforeClick()
2、 beforeDblclick()
3、 beforeRightClick()
4、 beforeMouseDown()
5、 beforeMouseUp()
6、 beforeChange()
7、 beforeDrag()
8、 confirmDragOpen()
9、 beforeDrop()
10、beforeRename()
11、confirmRename()
12、beforeRemove()
13、beforeExpand()
14、beforeCollapse()
分享到:
相关推荐
下面介绍一下zTree 的主要功能:( 演示Demo 请访问 个人站点) 1、兼容 IE、FireFox、Chrome 等浏览器(对于IE 6.0的兼容问题将不做特殊维护) 2、在一个页面内可同时生成多个 Tree 实例 3、支持 JSON 数据 4...
**ZTree 异步加载树结构详解** ZTree 是一款基于 jQuery 的强大的树形插件,广泛应用于构建具有层级关系的列表。...在实际开发过程中,结合 ZTree 的文档和示例,以及持续学习,将有助于更好地运用这一功能。
zTree是一款广泛应用于Web开发中的JavaScript树形插件,它以灵活、易用、功能强大而受到开发者喜爱。zTree帮助文档是为开发者提供详细使用指南和技术支持的重要资源,涵盖了zTree的所有特性和配置选项。 在zTree的...
【Selenium zTree 分析学习】 在自动化测试领域,Selenium 是一款广泛使用的开源工具,它支持多种浏览器,包括Firefox、Chrome和IE,用于模拟用户交互行为,进行Web应用程序的功能测试。ZTree 是一个JavaScript实现...
提供的`.chm`文件是zTree的官方帮助文档,包含了详细的API介绍、示例代码以及常见问题解答,是学习和使用zTree的重要参考资料。通过阅读此文档,开发者可以更好地理解和运用zTree的各种功能,解决实际开发中遇到的...
此外,为了方便开发者,还会提供不同版本的API文档,如`zTreeAPI v2.5.chm`和`zTreeAPI v2.5.pdf`,这些文档详细介绍了每个方法、参数和事件,是学习和调试ztree的重要参考资料。 3. **ztree的PDF教程**:`zTreeAPI...
zTree是一款广泛应用于Web开发中的JavaScript树形插件,它以...总的来说,zTree的官方Demo和API文档提供了全面的学习资源,通过深入研究和实践,你可以有效地将zTree应用到你的项目中,创建出富有交互性的树形界面。
3. 示例代码:可能包含了一些已经整合了`Bootstrap`样式的`ZTree`实例,供开发者参考和学习。 集成`ZTree`和`Bootstrap`的步骤通常包括以下几个关键点: 1. **引入依赖**:首先,你需要在你的项目中引入`Bootstrap...
通过学习和掌握zTree,开发者可以轻松创建出美观、实用的树形菜单,提升网站或应用程序的用户体验。 总的来说,zTree作为一款专业的JavaScript树形菜单库,其强大的功能和易用性使其在众多同类库中脱颖而出,是开发...
总结来说,zTree_v3压缩包是学习和使用zTree的重要资源,其中的demo可以帮助我们快速上手,而API文档则提供了详细的技术指导,让开发者能够充分利用zTree的强大功能,创建出高效、美观的树形结构界面。在实际开发中...
在IT行业中,zTree是一款非常流行的JavaScript插件,主要用于实现数据的树形展示。它具有丰富的功能、良好的可...通过学习和实践这个项目,开发者可以深入理解zTree的工作原理,提升JavaScript编程和前端交互设计能力。
《zTree过滤功能详解与代码示例》 zTree是一款基于JavaScript的树形插件,广泛应用于网页中的数据展示和操作。它具有丰富的配置项、强大...对于初学者和有经验的开发者来说,zTree都是一个值得学习和使用的强大工具。
总的来说,“zTree_v3-master”压缩包是学习和使用zTree的重要资源,包含了从基础到进阶的所有知识,对于希望实现交互式树形菜单的开发者来说,这是一个不可或缺的工具。通过深入学习和实践,开发者能够灵活地运用...
通过深入学习官方接口文档,开发者可以进一步发掘zTree的潜力,满足复杂业务需求。 总的来说,“zTree的基本应用”涵盖了zTree的初始化、数据处理、常见操作以及在实际项目中的应用。通过熟练掌握这些知识点,...
7. **API文档与示例**:zTree提供了详尽的API文档和丰富的示例代码,帮助开发者快速上手,减少了学习成本。 在实际应用中,JQuery zTree v3.3常用于网站的导航菜单、文件管理、组织结构展示、权限控制等多个场景。...
在实际项目中,`ztree-select`的使用需要结合具体的业务场景和需求,合理配置各项参数,同时,由于`ZTree`是一个强大的库,它提供了丰富的API和回调函数,开发者可以通过深入学习和实践,充分利用其功能,以满足复杂...
同时,zTree还提供了详细的API文档和示例代码,方便开发者查阅和学习。 总结来说,zTree是一个强大且实用的JavaScript树形菜单插件,它的易用性和灵活性使得在各种项目中都能发挥出色的效果。通过理解其基本概念和...
示例通常包括基础用法、节点操作、异步加载等场景,是学习zTree的快速途径。 使用zTree时,需要注意以下几点: - 数据源的正确配置是zTree正常工作的关键,务必确保JSON格式的正确性。 - 要理解并合理利用事件机制...
ZTree是一款基于JavaScript的开源项目,它主要用于构建可交互的树形数据结构,常用于网站的导航、组织架构展示、权限...通过深入学习其API和示例,你可以根据需求定制功能丰富的树形组件,提升项目的交互性和易用性。
JQuery zTree 是一个基于 jQuery 的插件,用于在网页中构建交互式的树形结构。v3.4 版本是其稳定且功能丰富的版本之一,...通过深入学习和理解 zTree 的 API 和示例,开发者可以充分利用其特性,提升项目的用户体验。