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 相关文章推荐
动态调用css文件——jquery的应用
Feb 20 Javascript
js运动动画的八个知识点
Mar 12 Javascript
AngularJS指令与控制器之间的交互功能示例
Dec 14 Javascript
详解JavaScript时间处理之几个月前或几个月后的指定日期
Dec 21 Javascript
AngularJS框架中的双向数据绑定机制详解【减少需要重复的开发代码量】
Jan 19 Javascript
利用Javascript实现简单的转盘抽奖
Feb 13 Javascript
jQuery列表检索功能实现代码
Jul 17 jQuery
javaScript字符串工具类StringUtils详解
Dec 08 Javascript
JavaScript的数据类型转换原则(干货)
Mar 15 Javascript
WebGL three.js学习笔记之阴影与实现物体的动画效果
Apr 25 Javascript
浅谈JS中this在各个场景下的指向
Aug 14 Javascript
微信小程序缓存支持二次开发封装实现解析
Dec 16 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
关于查看MSSQL 数据库 用户每个表 占用的空间大小
2013/06/21 PHP
在PHP中使用redis
2013/11/04 PHP
php密码生成类实例
2014/09/24 PHP
php实现的RSS生成类实例
2015/04/23 PHP
php采用session实现防止页面重复刷新
2015/12/24 PHP
javaScript 简单验证代码(用户名,密码,邮箱)
2009/09/28 Javascript
基于jquery的一个简单的脚本验证插件
2010/04/05 Javascript
JavaScript图片放大技术(放大镜)实现代码分享
2013/11/14 Javascript
Js 导出table内容到Excel的简单实例
2013/11/19 Javascript
js模拟点击以提交表单为例兼容主流浏览器
2013/11/29 Javascript
js操作输入框提示信息且响应鼠标事件
2014/03/25 Javascript
微信小程序实现action-sheet弹出底部菜单功能【附源码下载】
2017/12/09 Javascript
Vue结合Video.js播放m3u8视频流的方法示例
2018/05/04 Javascript
security.js实现的RSA加密功能示例
2018/06/06 Javascript
基于jQuery使用Ajax动态执行模糊查询功能
2018/07/05 jQuery
Vue框架里使用Swiper的方法示例
2018/09/20 Javascript
Openlayers实现扩散的动态点(水纹效果)
2020/08/17 Javascript
多个Vue项目部署到服务器的步骤记录
2020/10/22 Javascript
[37:47]IG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
python冒泡排序简单实现方法
2015/07/09 Python
python pandas 对series和dataframe的重置索引reindex方法
2018/06/07 Python
Python3使用turtle绘制超立方体图形示例
2018/06/19 Python
Python实现将Excel转换成xml的方法示例
2018/08/25 Python
Python常用数据分析模块原理解析
2020/07/20 Python
购买大码女装:Lane Bryant
2016/09/07 全球购物
介绍一下Cookie和Session及他们之间的区别
2012/11/20 面试题
Linux管理员面试经常问道的相关命令
2013/04/29 面试题
法务专员岗位职责
2014/01/02 职场文书
大学生党员自我批评思想汇报
2014/10/10 职场文书
房地产销售经理岗位职责
2015/02/02 职场文书
2016公司中秋节寄语
2015/12/07 职场文书
laravel ajax curd 搜索登录判断功能的实现
2021/04/17 PHP
Java框架入门之简单介绍SpringBoot框架
2021/06/18 Java/Android
pycharm安装深度学习pytorch的d2l包失败问题解决
2022/03/25 Python
MySQL数据库之存储过程 procedure
2022/06/16 MySQL