/** * 页面初始化 */ $(document).ready(function(){ onLoadZTree(); }); /** * 加载树形结构数据 */ function onLoadZTree(){ var treeNodes; $.ajax({ async:false,//是否异步 cache:false,//是否使用缓存 type:'POST',//请求方式:post dataType:'json',//数据传输格式:json url:$('#ctx').val()+"SendNoticeMsgServlet?action=loadUserTree",//请求的action路径 error:function(){ //请求失败处理函数 alert('亲,请求失败!'); }, success:function(data){ // console.log(data); //请求成功后处理函数 treeNodes = data;//把后台封装好的简单Json格式赋给treeNodes } }); var t = $("#user_tree"); t = $.fn.zTree.init(t, setting, treeNodes); }
java后台加载数据代码:
1、定义tree的VO类,这个也可以不用定义,由于我要用到其他操作,方便一些
/** * zTree树形结构对象VO类 * * @author Administrator * */ public class TreeVO { private String id;//节点id private String pId;//父节点pId I必须大写 private String name;//节点名称 private String open = "false";//是否展开树节点,默认不展开 public String getId() { return id; } public void setId(String id) { this.id = id; } public String getpId() { return pId; } public void setpId(String pId) { this.pId = pId; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getOpen() { return open; } public void setOpen(String open) { this.open = open; } }
2、查询数据库,并且sql的结构字段也要是id,pId,name,open(可选)这种格式(注意:pId中间的I必须大写),然后将结果封装到TreeVO类中。
/** * 加载树形结构数据 * @param request * @param response * @throws IOException */ public void loadUserTree(HttpServletRequest request, HttpServletResponse response) throws IOException{ WeiXinUserService weixinUserService = new WeiXinUserServiceImpl(); List<TreeVO> user_tree_list = weixinUserService.getUserTreeList(); String treeNodesJson = JSONArray.fromObject(user_tree_list).toString();//将list列表转换成json格式 返回 PrintWriter out = response.getWriter(); //利用Json插件将Array转换成Json格式 out.print(treeNodesJson); //释放资源 out.close(); }
更多关于ztree控件的内容,请参考专题《jQuery插件ztree使用汇总》
这里就完成了整个操作了,誒,文笔不好,组织语言自然就不怎么样了,大家见谅!共同学习,共同成长!
您可能感兴趣的文章: