|
前一段时间项目要做一个公司的组织架构图,要求使用树形结构,因此我想起了梅花雪树,下面将我写的一个梅花雪树的小例子贴出来,以供大家参考。
数据库中的数据是这样的:
ComCode ComCName UpComCode
0000 总公司 Null
0001 分公司1 0000
0002 分公司2 0000
0003 子公司1 0001
封装成实体类
public class RtdCompanyDto{ private String comCode; private String comCName; private String upComCode; public void setComCode(string comCode){ this.comCode = comCode; } public String getComCode(){ return comCode; } public void setComCName(String comCName){ this.comCName = comCName; } public String getComCName(){ return comCName; } public void setUpComCode(String upComCode){ this.upComCode = upComCode; } public String getUpComCode(){ return upComCode; }}
然后通过JDBC或者hibernate进行数据的查询就可以了,不再赘述,我是将查出的数据放在Collection当中,然后用这些数据来构造我们的梅花雪树就可以了。
<%@page contentType="text/html;charset=GBK"%><%Collection comCollection = PubFun.getCompany(); //获得Collection集合%><html> <head> <title>部门显示</title> <link href="<%=request.getContextPath()%>/css/css.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="<%=request.getContextPath() %>/system/scripts/jsframework.js"></script></head><body> <div id="entIndTree"></div> <script type="text/javascript"> var data = {};<%if(comCollection != null && comCollection.size()>0){for(Iterator comIterator = comCollection.iterator();comIterator.hasNext();){RtdCompanyDto comDto = (RtdCompanyDto)comIterator.next();%> data['<%="".equals(comDto.getUpComCode())?-1:comDto.getUpComCode()%>_<%=comDto.getComCode()%>'] = 'text:<%=comDto.getComCName()%>;url:javascript:void(0)';<% } }%>Using("System.Web.UI.WebControls.MzTreeView");var a= new MzTreeView();a.dataSource = data;a.autoSort = false;a.useCheckbox = true;a.canOperate = true;a.color = '#000000';document.getElementById("entIndTree").innerHTML = a.render();a.expandLevel(1);</script></body></html>
这就是我做的小例子很简单,希望大家多多指正!
所使用的梅花雪树包见附件! |
|