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 相关文章推荐
jQuery中queue()方法用法实例
Dec 29 Javascript
三个js循环的关键字示例(for与while)
Feb 16 Javascript
javascript动态获取登录时间和在线时长
Feb 25 Javascript
浅析BootStrap模态框的使用(经典)
Apr 29 Javascript
详谈jQuery Ajax(load,post,get,ajax)的用法
Mar 02 Javascript
js判断是否是手机页面
Mar 17 Javascript
javascript 开发之百度地图使用到的js函数整理
May 19 Javascript
jquery easyui如何实现格式化列
Jul 30 jQuery
angularjs中$http异步上传Excel文件方法
Feb 23 Javascript
Vue页面切换和a链接的本质区别详解
Nov 12 Javascript
ES6的异步操作之promise用法和async函数的具体使用
Dec 06 Javascript
如何使用gpu.js改善JavaScript的性能
Dec 01 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数据库操作面向对象的优点
2006/10/09 PHP
php自动加载autoload机制示例分享
2014/02/20 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
2016/09/11 PHP
php面向对象之反射功能与用法分析
2017/03/29 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
Cookie跨域问题解决方案代码示例
2020/11/24 PHP
JQuery 浮动导航栏实现代码
2009/08/27 Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
2014/06/10 Javascript
JavaScript实现列表分页功能特效
2015/05/15 Javascript
JavaScript脚本判断蜘蛛来源的方法
2015/09/22 Javascript
javascript中checkbox使用方法简单实例演示
2015/11/17 Javascript
移动适配的几种方案(三种方案)
2016/11/25 Javascript
jquery利用json实现页面之间传值的实例解析
2016/12/12 Javascript
bootstrap多种样式进度条展示
2016/12/20 Javascript
node跨域请求方法小结
2017/08/25 Javascript
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
2018/07/23 Javascript
微信小程序实现登录注册tab切换效果
2020/12/29 Javascript
小程序如何获取多个formId实现详解
2019/09/20 Javascript
有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案
2020/05/09 Javascript
详解JavaScript中的this指向问题
2021/02/05 Javascript
python将xml xsl文件生成html文件存储示例讲解
2013/12/03 Python
Python中getpass模块无回显输入源码解析
2018/01/11 Python
pandas修改DataFrame列名的方法
2018/04/08 Python
Python之多进程与多线程的使用
2021/02/23 Python
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
英国时尚饰品和发饰购物网站:Claire’s
2017/07/04 全球购物
美国礼品卡商城: Gift Card Mall
2017/08/25 全球购物
英国最大的香水商店:The Fragrance Shop
2018/07/06 全球购物
夏威夷灵感服装及配饰:Reyn Spooner
2018/09/18 全球购物
应用心理学个人的求职信
2013/12/08 职场文书
入党申请自荐书范文
2014/02/11 职场文书
2015年学校图书室工作总结
2015/05/19 职场文书
2015年社区精神文明工作总结
2015/05/26 职场文书
董事长秘书工作总结
2015/08/14 职场文书
微信小程序结合ThinkPHP5授权登陆后获取手机号
2021/11/23 PHP
win10输入法不见了只能打出字母怎么解决?
2022/08/05 数码科技