首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

jsp目录树有关问题急求解

2014-01-21 
jsp目录树问题急求解有一个树模型类: */public class ReportNode {public final static String FOLER_TYPE

jsp目录树问题急求解
有一个树模型类:
 */
public class ReportNode {

public final static String FOLER_TYPE="FOLER_TYPE";
public final static String PACKAGE_TYPE="PACKAGE_TYPE";
public final static String REPORT_TYPE="REPORT_TYPE";

private String searchPath ;

private String defaultName ;

private String storeID ;

private String reportURL ;

private String nodeType ;

public String getSearchPath() {
return searchPath;
}

public void setSearchPath(String searchPath) {
this.searchPath = searchPath;
}

public String getDefaultName() {
return defaultName;
}

public void setDefaultName(String defaultName) {
this.defaultName = defaultName;
}

public String getStoreID() {
return storeID;
}

public void setStoreID(String storeID) {
this.storeID = storeID;
}

public String getReportURL() {
return reportURL;
}

public void setReportURL(String reportURL) {
this.reportURL = reportURL;
}

public String getNodeType() {
return nodeType;
}

public void setNodeType(String nodeType) {
this.nodeType = nodeType;
}

public List<ReportNode> getChildNodes() {
return childNodes;
}

public void setChildNodes(List<ReportNode> childNodes) {
this.childNodes = childNodes;
}

private List<ReportNode> childNodes ;



}

测试数据类:
public class Test {

  List<ReportNode> list = new ArrayList<ReportNode>() ;
  String restr = "";

public void init(){
ReportNode n1 = new ReportNode();
n1.setDefaultName("aa");
n1.setNodeType("f");
ReportNode n2 = new ReportNode();
n2.setDefaultName("bb");
n2.setNodeType("f");
list.add(n1);
list.add(n2);
ReportNode n3 = new ReportNode();
n3.setDefaultName("cc");
n3.setNodeType("f");
List<ReportNode> list2 = new ArrayList<ReportNode>() ;
list2.add(n3);
ReportNode n4 = new ReportNode();
n4.setDefaultName("dd");
n4.setNodeType("r");
List<ReportNode> list3 = new ArrayList<ReportNode>() ;
list3.add(n4);
n2.setChildNodes(list2);
n3.setChildNodes(list3);

}

 StringBuffer buff = new StringBuffer();
/**
 * 
 * @param rootList
 */
public void buildString(List<ReportNode> rootList){
String str1="";
if(rootList!=null && !rootList.isEmpty()){
Iterator<ReportNode> it = rootList.iterator();
while(it.hasNext()){
ReportNode node = it.next() ;
System.out.println(node.getDefaultName());
if("f".equals(node.getNodeType())){
str1 = "<ul><li>"+node.getDefaultName()+"<li><ul>";
}else{
str1="<li>"+node.getDefaultName()+"<li>";
}
buff.append(str1);
buildString(node.getChildNodes());
}
}else{
str1=str1+"</ul>";
buff.append(str1);
return ;
}

System.out.println(str1);


        return ;
 
 
 
}


public void test(){
init();
buildString(list);
//System.out.println(restr);

}



public static void main(String[] args) {

Test test = new Test();
test.test();
System.out.println(test.buff);
}
}


不知道怎么用递归的方式用ul、li展示目录树

求解答!


[解决办法]
找之间的关系
[解决办法]
建议用jquery ztree 数据用json传递

简单的例子

<link rel="stylesheet"
href="../../../jquery/zTree/css/zTreeStyle/zTreeStyle.css" type="text/css">


<link rel="stylesheet" href="../../../jquery/zTree/css/demo.css"
type="text/css">

<script type="text/javascript" src="../../../jquery/jquery-2.0.2.min.js"></script>

<script type="text/javascript"
src="../../../jquery/zTree/js/jquery.ztree.core-3.5.js"></script>

<SCRIPT type="text/javascript">
var setting = {
data: {
simpleData: {
enable: true
}
}
};

var zNodes =[
{ id:1, pId:0, name:"父节点1 - 展开", open:true},
{ id:11, pId:1, name:"父节点11 - 折叠"},
{ id:111, pId:11, name:"叶子节点111"},
{ id:112, pId:11, name:"叶子节点112"},
{ id:113, pId:11, name:"叶子节点113"},
{ id:114, pId:11, name:"叶子节点114"},
{ id:12, pId:1, name:"父节点12 - 折叠"},
{ id:121, pId:12, name:"叶子节点121"},
{ id:122, pId:12, name:"叶子节点122"},
{ id:123, pId:12, name:"叶子节点123"},
{ id:124, pId:12, name:"叶子节点124"},
{ id:13, pId:1, name:"父节点13 - 没有子节点", isParent:true}
];

$(document).ready(function(){
$.fn.zTree.init($("#treeDemo"), setting, zNodes);
});
</SCRIPT>


[解决办法]

<div class="zTreeDemoBackground left">
<ul id="treeDemo" class="ztree"></ul>
</div>

[解决办法]
树也自己写啊。。。

热点排行