六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 62|回复: 0

dtree+jquery动态生成树

[复制链接]

升级  46%

5

主题

5

主题

5

主题

童生

Rank: 1

积分
23
 楼主| 发表于 2013-1-29 07:30:59 | 显示全部楼层 |阅读模式
1.先到网上下载dtree和jquery
2.将dtree.css,dtree.js,一个img文件夹导入,css文件里面有dtree生成树的样式,js文件里面有我们会使用到的dtree的方法,img文件夹里面发的是生成树时的一些显示图片
3.导入jquery.js
4.编写一个servlet类,并且将其配置在web.xml中代码具体如下
  package org.hd.hrms.createTree;import java.io.*;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class PopedomServlet extends HttpServlet {public void init() throws ServletException {}public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");response.setContentType("text/xml;charset=utf-8");PrintWriter pw = response.getWriter();pw.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");pw.println("<nodes>");pw.println("<node nodeId='0' parentId='-1'>微普信息管理系统</node>");pw.println("<node nodeId='1' parentId='0'>新闻模块</node>");pw.println("<node nodeId='10' parentId='1'>新闻浏览</node>");pw.println("<node nodeId='11' parentId='1'>新闻管理</node>");pw.println("<node nodeId='2' parentId='0'>员工模块</node>");pw.println("<node nodeId='3' parentId='0'>部门模块</node>");pw.println("</nodes>");}}
在web.xml中的配置 <servlet-name>PopedomServlet</servlet-name>    <servlet-class>org.hd.hrms.createTree.PopedomServlet</servlet-class>    <load-on-startup>1</load-on-startup> <servlet-mapping>    <servlet-name>PopedomServlet</servlet-name>    <url-pattern>/popedom</url-pattern>  </servlet-mapping>  </servlet>
这里该servlet向页面打印了一个xml文件,jquery可以解析该xml文件
5.在jsp页面嵌入js代码
<link rel="stylesheet" href="dtree.css" type="text/css"></link>           <script type="text/javascript" src="dtree.js"></script>           <script type="text/javascript" src="jquery.js"></script> 先导入相关文件
<script type="text/javascript">                tree = new dTree('tree');//创建一个对象.      $.ajax({        url:'../popedom',        type:'post', //数据发送方式        dataType:'xml', //接受数据格式        error:function(json){                alert( "not lived!");          },       async: false ,//同步方式       success: function(xml){            $(xml).find("node").each(function(){            var nodeId=$(this).attr("nodeId");             var parentId=$(this).attr("parentId");             var nodeName=$(this).text();            tree.add(nodeId,parentId,nodeName,"","","workspace","","",false);                           });              }        });           document.write(tree);                   </script>
这里对tree.add()参数说明一下:第一个是自己的id号,第二个是父节点id号,第三个是显示的名字,第四个是点击该节点具体的请求,第五个提示语,第六个在那个目标窗口显示,第七个关闭时的显示图标,第八个是打开时显示的图标,第九个默认的打开状态, true打开, false关闭


最后上传dtree和jquery
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表