先到dhtmlxtree的官方网站下载源代码;
开始工作:
JSP代码如下(该代码是在dhtmlxtree的下载包%dhtmlxTree%\samples\checkboxes的例子改写的):
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>Insert title here</title> <link rel="STYLESHEET" type="text/css" href="./codebase/dhtmlxtree.css"> <script src="./codebase/dhtmlxcommon.js"></script> <script src="./codebase/dhtmlxtree.js"></script> <script type="text/javascript"> </script> </head> <body> <table> <tr> <td valign="top"> <div id="treeboxbox_tree" style="width: 250; height: 218; background-color: #f5f5f5; border: 1px solid Silver;"></div> </td> <td style="padding-left: 25" valign="top">Two state checkboxes<br> <br> <a href="javascript:void(0);" onClick="tree.setCheck(tree.getSelectedItemId(),true);">Check item</a><br> <br> <a href="javascript:void(0);" onClick="tree.setCheck(tree.getSelectedItemId(),false);">UnCheck item</a><br> <br> <a href="javascript:void(0);" onClick="tree.setSubChecked(tree.getSelectedItemId(),true);">Check branch</a><br> <br> <a href="javascript:void(0);" onClick="tree.setSubChecked(tree.getSelectedItemId(),false);">UnCheck branch</a><br> <br> <a href="javascript:void(0);" onClick="alert(tree.getAllChecked());">Get list of checked</a><br> <br> </td> </tr> <tr> <td valign="top"> <div id="treeboxbox_tree2" style="width: 250; height: 218; background-color: #f5f5f5; border: 1px solid Silver;; overflow: auto;"></div> </td> <td style="padding-left: 25" valign="top">Three state checkboxes<br> <br> <a href="javascript:void(0);" onClick="tree2.setCheck(tree2.getSelectedItemId(),true);">Check item</a><br> <br> <a href="javascript:void(0);" onClick="tree2.setCheck(tree2.getSelectedItemId(),false);">UnCheck item</a><br> <br> <a href="javascript:void(0);" onClick="alert(tree2.getAllChecked());">Get list of checked</a><br> <br> </td> </tr> </table> <script> tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); tree.setImagePath("./codebase/imgs/csh_bluebooks/"); tree.enableCheckBoxes(1); tree.loadXML("tree3.xml"); <!-- 就修改下面的一部分--> tree2=new dhtmlXTreeObject("treeboxbox_tree2","100%","100%",0); tree2.setImagePath("./codebase/imgs/csh_bluebooks/"); tree2.enableCheckBoxes(1); tree2.enableThreeStateCheckboxes(true); tree2.loadXML("treeData");//treeData就是servlet的映射,dhtmlxtree具有ajax的功能 </script> </body> </html>
JAVA代码如下:(就是一个简单的servlet)
package com.dhtmlxtree.test; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; public class TreeData extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("do post"); Document doc = createXMLData(); String content = doc.asXML(); System.out.println(content); resp.setContentType("text/xml; charset=GB18030");//千万不能少不然会出现乱码 resp.getWriter().write(content); } public static void main(String[] args) throws IOException { Document doc = createXMLData(); String content = doc.asXML(); System.out.println(content); } private static Document createXMLData() throws IOException { Document document = DocumentHelper.createDocument(); document.setXMLEncoding("GB18030"); Element root = document.addElement("tree"); root.addAttribute("id", "0"); Element item = root.addElement("item"); item.addAttribute("text", "我的工作台"); item.addAttribute("id", "work console"); item.addAttribute("im0", "folderClosed.gif"); item.addAttribute("im1", "folderOpen.gif"); item.addAttribute("im2", "folderClosed.gif"); Element subItem = item.addElement("item"); subItem.addAttribute("text", "代办事宜"); subItem.addAttribute("id", "working"); subItem.addAttribute("im0", "book_titel.gif"); subItem.addAttribute("im1", "fbook.gif"); subItem.addAttribute("im2", "book_titel.gif"); subItem = item.addElement("item"); subItem.addAttribute("text", "代办事宜2"); subItem.addAttribute("id", "working"); subItem.addAttribute("im0", "book_titel.gif"); subItem.addAttribute("im1", "fbook.gif"); subItem.addAttribute("im2", "book_titel.gif"); return document; } }
在web.xml中添加常规serlvet配置即可:
<servlet> <servlet-name>treeData</servlet-name> <servlet-class>com.dhtmlxtree.test.TreeData</servlet-class> </servlet> <servlet-mapping> <servlet-name>treeData</servlet-name> <url-pattern>/treeData</url-pattern> </servlet-mapping>
ok!测试一下即可