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 相关文章推荐
用Javascript评估用户输入密码的强度(Knockout版)
Nov 30 Javascript
js获取location.href的参数实例代码
Aug 02 Javascript
JavaScript实现字符串与日期的互相转换及日期的格式化
Mar 07 Javascript
javascript弹出带文字信息的提示框效果
Jul 19 Javascript
vue组件如何被其他项目引用
Apr 13 Javascript
seaJs使用心得之exports与module.exports的区别实例分析
Oct 13 Javascript
vue组件之间的数据传递方法详解
Apr 19 Javascript
Vue侦测相关api的实现方法
May 22 Javascript
JS学习笔记之闭包小案例分析
May 29 Javascript
通过实例学习React中事件节流防抖
Jun 17 Javascript
微信公众号H5之微信分享常见错误和问题(小结)
Nov 14 Javascript
Vuejs中的watch实例详解(监听者)
Jan 05 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
php实现递归抓取网页类实例
2015/04/03 PHP
PHP如何实现跨域
2016/05/30 PHP
laravel 配置路由 api和web定义的路由的区别详解
2019/09/03 PHP
JS实现浏览器菜单命令
2006/09/05 Javascript
国外的为初学者写的JavaScript教程
2008/06/09 Javascript
原生JavaScript实现连连看游戏(附源码)
2013/11/05 Javascript
js单例模式详解实例
2013/11/21 Javascript
jQuery提交多个表单的小技巧
2014/07/27 Javascript
Javascript中的几种URL编码方法比较
2015/01/23 Javascript
BootStrap实现带关闭按钮功能
2017/02/15 Javascript
基于Vue的文字跑马灯组件(npm 组件包)
2017/05/24 Javascript
element-ui表格数据转换的示例代码
2018/08/24 Javascript
微信小程序使用scroll-view标签实现自动滑动到底部功能的实例代码
2018/11/09 Javascript
react koa rematch 如何打造一套服务端渲染架子
2019/06/26 Javascript
Js图片点击切换轮播实现代码
2020/07/27 Javascript
[03:43]2014DOTA2西雅图国际邀请赛 newbee战队巡礼
2014/07/07 DOTA
在Python下利用OpenCV来旋转图像的教程
2015/04/16 Python
python 计算平均平方误差(MSE)的实例
2019/06/29 Python
详解python中__name__的意义以及作用
2019/08/07 Python
Python脚本操作Excel实现批量替换功能
2019/11/20 Python
Python selenium实现断言3种方法解析
2020/09/08 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
2020/10/30 Python
python爬虫用scrapy获取影片的实例分析
2020/11/23 Python
Python数据模型与Python对象模型的相关总结
2021/01/26 Python
巴基斯坦购物网站:Goto
2019/03/11 全球购物
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
碧欧泉法国官网:Biotherm法国
2019/10/23 全球购物
汉语专业应届生求职信
2013/10/01 职场文书
化妆师职业生涯规划书
2014/02/16 职场文书
高校教师岗位职责
2014/03/18 职场文书
中国梦口号
2014/06/13 职场文书
党员批评与自我批评(5篇)
2014/09/23 职场文书
天下第一关导游词
2015/02/06 职场文书
军训个人总结
2015/03/03 职场文书
校车司机安全责任书
2015/05/11 职场文书
python基于tkinter实现gif录屏功能
2021/05/19 Python