jQuery Ztree行政地区树状展示(点击加载)


Posted in Javascript onNovember 09, 2016

Ztree行政地区树状展示(点击加载) 效果如下:

jQuery Ztree行政地区树状展示(点击加载) 

开始贴代码:

实体类 Item,用于对Ztree的节点展示

public class Item {
 private String id;
 private String pId;
 private String name;
 private int type;
 private String isParent;
 //getters/setters
}

通过业务代码获取加载的对象:

@RequestMapping("/province/showProvince") 
@ResponseBody
public List<Item> showProvince(HttpServletRequest request,Model model){ 
 List<Province> all = provinceService.getAll();
 List<Item> list = new ArrayList<Item>(all.size());
 for(Province p : all){
 Item item = new Item();
 item.setId(p.getCode());
 item.setpId("0");
 item.setName(p.getProvinceName());
 item.setIsParent("true");
 item.setType(0);
 list.add(item);
 }
 return list; 
 }

关键看页面的脚本和实现:

页面代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Insert title here</title>
<link rel="stylesheet" href="css/demo.css" type="text/css" />
<link rel="stylesheet" href="css/zTreeStyle/zTreeStyle.css" type="text/css" />
<script type="text/javascript" src="js/jquery-1.4.4.min.js"></script>
<script type="text/javascript" src="js/menu.js"></script>
<script type="text/javascript" src="js/jquery.ztree.core-3.5.js"></script>
 
</head>
<body>
 <div class="zTreeDemoBackground left">
 <ul id="tree" class="ztree"></ul>
 </div>
</body>
</html>

menu.js

var menu = {
 setting : {
 data : {
 simpleData : {
 enable : true
 }
 },
 keep : {
 parent : true
 },
 /*
 * view : { dblClickExpand : false },
 */
 callback : { // 回调函数
 onExpand : addNode,
 onClick : addNode
 }
 },
 
 loadMenuTree : function() {
 $.post("province/showProvince.do", null, function(data) {
 $.fn.zTree.init($("#tree"), menu.setting, data);
 });
 }
};
$().ready(function() {
 menu.loadMenuTree();
});
 
function addNode(event, treeId, treeNode, clickFlag) {
 var zTree = $.fn.zTree.getZTreeObj("tree");
 if (treeNode.isParent && typeof (treeNode.children) == "undefined") {
 var type = treeNode.type;
 var parameter = {
 pId : treeNode.id
 };
 if (type == 0) {
 $.post("city/showCity.do", parameter, function(data) {
 zTree.addNodes(treeNode, data);
 });
 }
 if (type == 1) {
 $.post("county/showCounty.do", parameter, function(data) {
 zTree.addNodes(treeNode, data);
 });
 }
 }
}

其中onExpand : addNode,  onClick : addNode 两个回调函数,分别是在点击折叠按钮和节点时,异步加载子节点的内容,onDblClick添加回调函数时,发现会触发onExpand 事件,是因为zTree双击时触发onExpand事件,所以在setting中设置 view : { dblClickExpand : false } 可关闭这个默认设置。

最后,提供一个zTree的在线api: http://www.treejs.cn/v3/api.php

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
Sep 15 Javascript
jquery.boxy插件的iframe扩展代码
Jul 02 Javascript
js弹出层之1:JQuery.Boxy (二)
Oct 06 Javascript
JS简单实现登陆验证附效果图
Nov 19 Javascript
javascript面向对象之定义成员方法实例分析
Jan 13 Javascript
jQuery实现复制到粘贴板功能
Feb 11 Javascript
js前端日历控件(悬浮、拖拽、自由变形)
Mar 02 Javascript
webpack 1.x升级过程中的踩坑总结大全
Aug 09 Javascript
JavaScript判断输入是否为数字类型的方法总结
Sep 28 Javascript
bootstrap 通过加减按钮实现输入框组功能
Nov 15 Javascript
vue实现城市列表选择功能
Jul 16 Javascript
微信小程序云开发如何使用云函数生成二维码
May 18 Javascript
Bootstrap模态框水平垂直居中与增加拖拽功能
Nov 09 #Javascript
使用 bootstrap modal遇到的问题小结
Nov 09 #Javascript
H5移动端图片压缩上传开发流程
Nov 09 #Javascript
微信小程序 网络API Websocket详解
Nov 09 #Javascript
微信小程序 网络API 上传、下载详解
Nov 09 #Javascript
微信小程序 网络API发起请求详解
Nov 09 #Javascript
etmvc+jQuery EasyUI+combobox多值操作实现角色授权实例
Nov 09 #Javascript
You might like
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
PHP判断变量是否为0的方法
2014/02/08 PHP
Laravel登录失败次数限制的实现方法
2020/08/26 PHP
JavaScript的Cookies
2008/01/16 Javascript
Js+Jq获取URL参数的集中方法示例代码
2014/05/20 Javascript
AngularJS初始化过程分析(引导程序)
2014/12/06 Javascript
使用coffeescript编写node.js项目的方法汇总
2015/08/05 Javascript
学习javascript面向对象 掌握创建对象的9种方式
2016/01/04 Javascript
基于 Node.js 实现前后端分离
2016/04/23 Javascript
在IE8上JS实现combobox支持拼音检索功能
2016/05/23 Javascript
第一次接触神奇的前端框架vue.js
2016/12/01 Javascript
使用jsonp实现跨域获取数据实例讲解
2016/12/25 Javascript
SeaJS中use函数用法实例分析
2017/10/10 Javascript
vue页面加载闪烁问题的解决方法
2018/03/28 Javascript
详解组件库的webpack构建速度优化
2018/06/18 Javascript
了解JavaScript函数中的默认参数
2019/05/30 Javascript
JavaScript判断浏览器运行环境的详细方法
2019/06/30 Javascript
JS前端面试必备——基本排序算法原理与实现方法详解【插入/选择/归并/冒泡/快速排序】
2020/02/24 Javascript
Vue基于localStorage存储信息代码实例
2020/11/16 Javascript
Python脚本简单实现打开默认浏览器登录人人和打开QQ的方法
2016/04/12 Python
python 实现tar文件压缩解压的实例详解
2017/08/20 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)
2019/06/27 Python
python程序 创建多线程过程详解
2019/09/23 Python
Python queue队列原理与应用案例分析
2019/09/27 Python
Python绘制三角函数图(sin\cos\tan)并标注特定范围的例子
2019/12/04 Python
Python3常见函数range()用法详解
2019/12/30 Python
tensorflow之变量初始化(tf.Variable)使用详解
2020/02/06 Python
python3检查字典传入函数键是否齐全的实例
2020/06/05 Python
python3.6中anaconda安装sklearn踩坑实录
2020/07/28 Python
css3 伪类选择器快速复习小结
2019/09/10 HTML / CSS
设计部经理的岗位职责
2013/11/16 职场文书
听课评语大全
2014/04/30 职场文书
护理学院专科毕业生求职信
2014/06/28 职场文书
2015年高一班主任工作总结
2015/05/13 职场文书
2016年6.5世界环境日宣传活动总结
2016/04/01 职场文书