先到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!测试一下即可
分享到:
相关推荐
DHTMLX Tree是一个JavaScript库,它可以与后台的Servlet进行通信,动态加载和管理树状结构的数据。Servlet在这里起到了服务器端数据处理和传输的角色,它接收前端的请求,处理数据,然后返回给前端展示。这种结合...
总的来说,`dhtmlxtree`、`servlet`和`jdom`的结合使用,为我们提供了一种高效、灵活的方式,动态地从数据库生成交互式的树形视图,尤其适用于需要展示层级关系的数据场景。无论是在传统的Java Web应用还是现代的MVC...
4. **节点操作**:通过JSON数据,可以轻松地添加、删除、更新树节点,实现动态数据更新。 **dhtmlxtreeTest项目** 在提供的压缩包文件列表中,我们看到一个名为`dhtmlxtreeTest`的文件或文件夹,这很可能是该项目的...
本示例——"(纯Json个人发布Java版)DhtmlxTree+struts2构建异步(动态)加载树"——展示了如何利用Java技术和前端库DhtmlxTree来实现动态、异步的数据加载功能,这在现代Web应用中非常常见,如文件管理系统、组织结构...
本文介绍了如何使用DHTMLXTree组件构建一个动态维护树的完整流程,从数据库设计到前后端代码实现都进行了详细的说明。通过这种方式可以有效地管理具有层级关系的数据集,并为用户提供友好易用的操作界面。当然,这...
Java 动态树dhtmlxtree是一个用于在Java应用程序中创建交互式树形视图的组件,它基于JavaScript库dhtmlxSuite。dhtmlxtree是用于构建富客户端Web应用的工具,它允许开发者在网页上展示数据结构,提供可折叠、可扩展...
在Java编程环境中,调用dhtmlXTree并与XML数据交互是一项常见的任务,特别是在构建富客户端应用或者需要动态呈现树形结构数据的场景下。dhtmlXTree是一款强大的JavaScript组件,它能够创建美观、功能丰富的树形菜单...
在实际应用中,你可能还会遇到一些挑战,例如处理异步数据加载、处理节点的层次结构、确保菜单与树结构同步更新等。因此,理解和掌握dhtmlXtree的API及事件机制至关重要。 总的来说,dhtmlXtree的右键菜单功能极大...
dhtmlxTree是一款强大的JavaScript组件,用于在Web应用程序中创建交互式的树状数据结构。这个组件允许用户以图形化的方式展示层次化的数据,并提供了丰富的功能和自定义选项,如节点的拖放、上下文菜单、图标、状态...
在使用dhtmlXTree时,开发者需要理解其基本结构,包括如何配置树的根节点、如何加载数据、以及如何通过JavaScript代码动态操作树的节点。此外,了解如何自定义节点的样式和行为也是关键,这通常涉及到CSS和...
dhtmlxTree是一款强大的JavaScript库,用于在Web应用程序中创建交互式树形结构。这个组件提供了丰富的功能,允许开发者构建动态、自定义化的树形视图,非常适合展示层次结构的数据,如目录结构、组织架构或者导航...
在DHTMLX组件库中,DHTMLXTree是一款基于JavaScript的DHTML组件,它主要用于构建富交互式的Web界面,特别是在Ajax技术的支持下,能实现动态更新和高效的数据展示。DHTMLXTree提供了一种直观的方式,用于组织和呈现...
1. **动态加载**:dhtmlXTree1.6支持异步加载,即节点可以在用户展开时按需加载,降低了页面初次加载时的数据量,提高了用户体验。 2. **自定义图标**:每个节点可以有自定义的打开/关闭图标,以及与之关联的叶子...
DHTMLXTree 支持从 XML 文件加载数据,下面是一个简单的 XML 数据示例: ```xml <!-- 子节点 --> ``` - **根节点**:`<tree>` 标签作为根节点。 - **子节点**:`<item>` 标签表示每个具体的节点。 - **属性...
总之,DhtmlxTree v.3.0是一个功能强大且易于定制的JavaScript树形组件,通过XML HTTP请求和AJAX技术,实现了动态数据加载和交互,结合其丰富的事件机制、扩展组件和详尽的文档支持,为开发高效、美观的Web应用提供...
例如,通过AJAX请求获取动态数据,实时更新树状视图;或者结合服务器端技术(如PHP、Java、ASP.NET),实现双向数据绑定,使得界面上的修改能够同步到后端数据库。 对于专业版,可能还提供了一些高级特性,如权限...