jquery zTree异步加载简单实例讲解


Posted in Javascript onFebruary 25, 2016

本文实例讲解了jquery zTree异步加载,分享给大家供大家参考,具体内容如下

web.xml中Servlet配置如下:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.4"  
  xmlns="http://java.sun.com/xml/ns/j2ee"  
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee  
  http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
   
   
  <servlet> 
    <servlet-name>getDataServlet</servlet-name>;  
    <servlet-class>testTree.TestTree</servlet-class>;  
  </servlet> 
   
  <servlet-mapping> 
  <servlet-name>getDataServlet</servlet-name>;  
  <url-pattern>/getData</url-pattern>;  
  </servlet-mapping> 
 
</web-app>

JSP页面:

<!DOCTYPE html> 
<HTML> 
<HEAD> 
  <TITLE> ZTREE DEMO - Simple Data</TITLE> 
  <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
  <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/jquery.ztree.core-3.2.js"></script> 
  <script type="text/javascript" src="js/jquery.ztree.excheck-3.2.js"></script> 
  <script type="text/javascript" src="js/jquery.ztree.exedit-3.2.js"></script> 
  <SCRIPT type="text/javascript"> 
    <!-- 
    var setting = { 
      data: { 
        simpleData: { 
          enable: true 
        } 
      } 
      ,async: { 
        enable: true, 
        url:"/testJQuery/getData", 
        autoParam:["id", "name"], 
        otherParam:{"otherParam":"zTreeAsyncTest"}, 
        dataFilter: filter 
      } 
    }; 
    function filter(treeId, parentNode, childNodes) { 
      if (!childNodes) return null; 
      for (var i=0, l=childNodes.length; i<l; i++) { 
        childNodes[i].name = childNodes[i].name.replace('',''); 
      } 
      return childNodes; 
    } 
    var zNodes =[ 
      { id:1, pId:0, name:"parentNode 1", open:true}, 
      { id:11, pId:1, name:"parentNode 11"}, 
      { id:111, pId:11, name:"leafNode 111"}, 
      { id:112, pId:11, name:"leafNode 112"}, 
      { id:113, pId:11, name:"leafNode 113"}, 
      { id:114, pId:11, name:"leafNode 114"}, 
      { id:12, pId:1, name:"parentNode 12"}, 
      { id:121, pId:12, name:"leafNode 121"}, 
      { id:122, pId:12, name:"leafNode 122"}, 
      { id:123, pId:12, name:"leafNode 123"}, 
      { id:13, pId:1, name:"parentNode 13", isParent:true}, 
      { id:2, pId:0, name:"parentNode 2", isParent:true} 
    ]; 
 
    $(document).ready(function(){ 
      $.fn.zTree.init($("#treeDemo"), setting, zNodes); 
    }); 
    //--> 
  </SCRIPT> 
 </HEAD> 
 
<BODY> 
<h1>最简单的树 -- 简单 JSON 数据</h1> 
<h6>[ 文件路径: core/simpleData.html ]</h6> 
<div class="content_wrap"> 
  <div class="zTreeDemoBackground left"> 
    <ul id="treeDemo" class="ztree"></ul> 
  </div> 
</div> 
</BODY> 
</HTML>

 Action代码:

public class TestTree extends HttpServlet { 
 
  @Override 
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
//   System.out.println("--------doGet--------"); 
    this.doPost(request, response); 
  } 
 
  @Override 
  public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
//   System.out.println("--------doPost--------"); 
    String id = request.getParameter("id"); 
    String name = request.getParameter("name"); 
    String level = request.getParameter("level"); 
    String otherParam = request.getParameter("otherParam"); 
    System.out.println(id + "|" + name + "|" + level + "|" + otherParam); 
     
    JSONObject json = new JSONObject(); 
    List<HashMap<String,Object>> list = new ArrayList<HashMap<String,Object>>(); 
     
    for(int i = 0; i < 5; i++){ 
      HashMap<String,Object> hm = new HashMap<String,Object>();  //最外层,父节点       
      hm.put("id", id + i);//id属性 ,数据传递  
      hm.put("name", id + i); //name属性,显示节点名称  
      hm.put("pId", id); 
       
      list.add(hm); 
    } 
     
    JSONArray arr = new JSONArray(list); 
    json.put("success", true); 
    json.put("arr", arr); 
     
    System.out.println("--------json------" + json.toString()); 
    response.getWriter().write(arr.toString()); 
//   response.getWriter().write(json.toString()); 
//   response.getWriter().write("[{pId:'2',name:'20',id:'20'}]"); 
  } 
 
}

以上就是jquery zTree异步加载实例分享给大家,希望对大家学习异步加载技术有所帮助。

Javascript 相关文章推荐
AJAX异步从优酷专辑中采集所有视频及信息(JavaScript代码)
Nov 20 Javascript
浅谈jQuery事件绑定原理
Jan 02 Javascript
Javascript数据结构与算法之列表详解
Mar 12 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
Oct 19 Javascript
jqueryMobile使用示例分享
Jan 12 Javascript
JS获取地址栏参数的两种方法(简单实用)
Jun 14 Javascript
带有定位当前位置的百度地图前端web api实例代码
Jun 21 Javascript
jQuery的deferred对象使用详解
Sep 25 Javascript
React中ES5与ES6写法的区别总结
Apr 21 Javascript
react开发中如何使用require.ensure加载es6风格的组件
May 09 Javascript
vue如何集成raphael.js中国地图的方法示例
Aug 15 Javascript
详解微信小程序之一键复制到剪切板
Apr 24 Javascript
JavaScript代码因逗号不规范导致IE不兼容的问题
Feb 25 #Javascript
jquery插件jquery.LightBox.js实现点击放大图片并左右点击切换效果(附demo源码下载)
Feb 25 #Javascript
JQuery ztree带筛选、异步加载实例讲解
Feb 25 #Javascript
jquery ztree实现模糊搜索功能
Feb 25 #Javascript
jQuery实现从身份证号中获取出生日期和性别的方法分析
Feb 25 #Javascript
jquery实现列表上下移动功能
Feb 25 #Javascript
js简单判断移动端系统的方法
Feb 25 #Javascript
You might like
PHP 获取文件路径(灵活应用__FILE__)
2013/02/15 PHP
浅谈PHP调用Webservice思路及源码分享
2014/06/04 PHP
PHP和C#可共用的可逆加密算法详解
2015/10/26 PHP
php实现图片上传时添加文字和图片水印技巧
2020/04/18 PHP
php利用递归实现删除文件目录的方法
2016/09/23 PHP
详解php中 === 的使用
2016/10/24 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
php实现二叉树中和为某一值的路径方法
2018/10/14 PHP
Laravel5.5 数据库迁移:创建表与修改表示例
2019/10/23 PHP
9个JavaScript评级/投票插件
2010/01/18 Javascript
javascript 隐藏/显示指定的区域附HTML元素【legend】用法
2010/03/05 Javascript
JQuery 插件制作实践 xMarquee插件V1.0
2010/04/02 Javascript
Jquery插件之打造自定义的select标签
2011/11/30 Javascript
通过Javascript将数据导出到外部Excel文档的函数代码
2012/06/15 Javascript
父元素与子iframe相互获取变量和元素对象的具体实现
2013/10/15 Javascript
escape编码与unescape解码汉字出现乱码的解决方法
2014/07/02 Javascript
14个有用的Jquery技巧分享
2015/01/08 Javascript
JavaScript实现带标题的图片轮播特效
2015/05/20 Javascript
第十章之巨幕页头缩略图与警告框组件
2016/04/25 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
原生js实现验证码功能
2017/03/16 Javascript
区别JavaScript函数声明与变量声明
2018/09/12 Javascript
创建与框架无关的JavaScript插件
2020/12/01 Javascript
[05:02]2014DOTA2 TI中国区预选赛精彩TOPPLAY第三弹
2014/06/25 DOTA
[46:04]Liquid vs VP Supermajor决赛 BO 第四场 6.10
2018/07/05 DOTA
[36:20]KG vs SECRET 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
pygame游戏之旅 载入小车图片、更新窗口
2018/11/20 Python
使用Python计算玩彩票赢钱概率
2019/06/26 Python
Python 操作mysql数据库查询之fetchone(), fetchmany(), fetchall()用法示例
2019/10/17 Python
Python Opencv实现单目标检测的示例代码
2020/09/08 Python
几道PHP的面试题
2012/05/19 面试题
大学生物业管理求职信
2013/10/24 职场文书
在校学生职业规划范文
2014/01/08 职场文书
2014厂务公开实施方案
2014/02/17 职场文书
大学生志愿者心得体会
2016/01/15 职场文书