一、zTree的下载

  官网:http://www.treejs.cn/v3/main.php#_zTreeInfo

  解压后的目录结构为:

  

二、zTree入门案例

2.1 在页面中引入相关文件

  要使用zTree,必须先引入zTree的相关js文件,在下载的开发包里,提供了如下js文件

  • jquery.ztree.core.js:是zTree的核心库,包括基本的展示功能。
  • jquery.ztree.excheck.js:是zTree关于复选框/单选框的扩展库。
  • jquery.ztree.exedit.js:是zTree关于编辑操作的扩展库。
  • jquery.ztree.exhide.js:是zTree关于节点隐藏的扩展库。
  • jquery.ztree.all.js:是core+excheck+exedit的组合(不包含exhide)

  本案例中,我引入的是jquery.ztree.all.js。此外还需要引入一个zTreeStyle.css文件,此文件是ztree需要的css和图片。因为zTree是基于jQuery开发的,所以还要引入jQuery

<!--引入JQuery-->
<script type="application/javascript" src="${pageContext.request.contextPath}/easyui/jquery.min.js"></script>
<!--引入jquery.ztree.all.js-->
<script src="${pageContext.request.contextPath}/js/jquery.ztree.all-3.5.js"></script>
<!--引入zTree的样式文件-->
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/zTreeStyle.css"/>

2.2 构造zTree

【使用标准json数据构造ztree】(了解)

<div title="面板二">
<!-- 展示ztree效果 :使用标准json数据构造ztree-->
<ul id="ztree1" class="ztree"></ul>
<script type="text/javascript">
$(function(){
//页面加载完成后,执行这段代码----动态创建ztree
var setting = {};
//构造节点数据
var zNodes = [
{"name":"节点一","children":[
{"name":"节点一_1"},
{"name":"节点一_2"}
]},//每个json对象表示一个节点数据
{"name":"节点二"},
{"name":"节点三"}
];
//调用API初始化ztree
$.fn.zTree.init($("#ztree1"), setting, zNodes);
});
</script>
</div>

  效果:

  

【使用简单json数据构造ztree】(重点)

<div title="面板三">
<!-- 展示ztree效果 :使用简单json数据构造ztree-->
<ul id="ztree2" class="ztree"></ul>
<script type="text/javascript">
$(function () {
//页面加载完成后,执行这段代码----动态创建ztree
var setting2={
data:{
simpleData:{
enable:true //使用简单json数据构造ztree节点
}
}
};
// 构造节点数据
var zNodes2=[
{"id":"1","pId":"2","name":"节点一"},//每个json对象表示一个节点数据
{"id":"2","pId":"3","name":"节点二"},
{"id":"3","pId":"0","name":"节点三"}
];
//调用API初始化ztree
$.fn.zTree.init($("#ztree2"), setting2, zNodes2); })
</script>
</div>

  效果:

  

【发送ajax请求获取json数据构造ztree】

  准备json数据:

<div title="面板四">
<!-- 展示ztree效果 :发送ajax请求获取简单json数据构造ztree-->
<ul id="ztree3" class="ztree"></ul>
<script type="text/javascript">
$(function () {
//页面加载完成后,执行这段代码----动态创建ztree
var setting3 = {
data:{
simpleData:{
enable:true //使用简单json数据构造ztree节点
}
},
callback:{
//为ztree节点绑定单击事件
onClick: function (even, treeId, treeNode) {
if (treeNode.page != undefined) {
// 判断选项卡是否存在
var e = $("#mytabs").tabs("exists", treeNode.name);
if (e) {
// 如果存在,选中
$("#mytabs").tabs("select", treeNode.name);
} else {
// 动态添加一个选项卡
$("#mytabs").tabs("add",{
title:treeNode.name,
closable:true
});
}
} }
}
};
//发送ajax请求,获取json数据
//jQuery提供 的ajax方法:ajax、post、get、load、getJSON、getScript
var url="${pageContext.request.contextPath}/json/menu.json";
$.post(url, {}, function (data) {
//调用API初始化ztree
$.fn.zTree.init($("#ztree3"), setting3, data); },'json');
});
</script>
</div>

  效果如下:

  

zTree学习笔记的更多相关文章

  1. zTree 学习笔记之(一)

    zTree 学习笔记之(一) 简介 zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点. 到底有哪些具体的优点,可以参见官网 ...

  2. ztree学习笔记(一)

    在项目当中,经常会用到ztree树形插件,之前做的几个项目当中都用到了这个插件,感觉功能还是很强大的,而且在网上还找到了中文的API,因为项目中的树形结构不是自己做的,所以现在从头学习一下,并且记录一 ...

  3. z-tree学习笔记

    做项目时,需要用到带复选框的tree.经比较后优选了ztree,功能强大,文档清晰. http://www.treejs.cn/v3/api.php 直接上代码吧. 1.下载ztree后.将里面需要用 ...

  4. [译]聊聊C#中的泛型的使用(新手勿入) Seaching TreeVIew WPF 可编辑树Ztree的使用(包括对后台数据库的增删改查) 字段和属性的区别 C# 遍历Dictionary并修改其中的Value 学习笔记——异步 程序员常说的「哈希表」是个什么鬼?

    [译]聊聊C#中的泛型的使用(新手勿入)   写在前面 今天忙里偷闲在浏览外文的时候看到一篇讲C#中泛型的使用的文章,因此加上本人的理解以及四级没过的英语水平斗胆给大伙进行了翻译,当然在翻译的过程中发 ...

  5. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  6. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  7. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  8. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  9. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

随机推荐

  1. SpringMVC总结四:拦截器简单介绍

    首先要说一下HandlerExecutionChain: HandlerExecutionChain是一个执行链,当用户的请求到达DispatcherServlet的时候,DispatcherServ ...

  2. Dubbo管理中心部署

    我们在开发时,需要知道注册中心都注册了哪些服务,以便我们开发和测试.我们可以通过部署一个管理中心来实现.其实管理中心就是一个web应用,部署到tomcat即可. 管理端的部署: 1,首先我们要编译源码 ...

  3. POJ 3169 C - Layout

    题意 有n头奶牛从1到n编号,按照编号顺序站成一排,有可能有多头奶牛站在同一个坐标上.一些奶牛互相喜欢,所以他们的距离不能大于某个距离,一些奶牛互相讨厌,所以他们的距离不能小于某个距离,请计算如果可能 ...

  4. js数值和字符串比较的规则

    1.数值和字符串比较时 a.若字符串为数字字符串,则将字符串转为数字,再比较 b.若字符串不为数字字符串,则直接返回false,因为这里把字符串转为了NaN, 数字与NaN比较,都返回false

  5. mybatis 框架 的应用之四(一对一 与 一对多)

    lf-driver=com.mysql.jdbc.Driver lf-url=jdbc:mysql://localhost:3306/test?allowMultiQueries=true&u ...

  6. Cannot connect to the Docker datemon at tcp://0.0.0.0:2375 is the docker daemon runing?

    一.系统环境: 在Windows 7 64位上,采用Vmware workstation 12安装了CenOS7.5 64位. 二.问题 在CentOS7.5里安装了Docker,启动docker服务 ...

  7. 浅析junit4及扩展实践

    junit框架相关源代码分析,网上已经有很多了,本篇不做过多相关解说,主要还是要自己多读相关源代码.本篇主要对自动化测试过程相关的测试用例,测试数据,测试结果结合junit做相关扩展说明. 如果要解读 ...

  8. MAC通过SSH使用PEM文件登录

    1.命令如下 ssh -i key.pem ssh -i key.pem root@IP 如果出现报错说明这个问题是文件的权限太大了,需要给小点 sudo chmod 600 key.pem 然后再执 ...

  9. Marvel

    Marvel and what it is From http://www.tuicool.com/articles/qA3yau With marvel you can get an overvie ...

  10. c语言练习 二维数组 年平均降水量 月平均降水量

    #define YEARS 5#define MONTHES 12 int main(void) { const float rain[YEARS][MONTHES] = { {4.3,4.3,4.3 ...