esayUI实现Tree

<!    前台jsp页面>

<body>
<ul id="tree">
</ul>
</body>


|----------------------分割线-------------------------------

js 代码

function(){
$("#tree").tree({
url:Tree.action,
loafFilter:function(rows){
   return convert(rows);
}
});
}
function convert(rows){
   function exists(rows,parentId){
     for (  var i=0;i<rows.length;i++){
      if(rows[i].id== parentId) return true;
}
return false;
}
var nodes=[];
for(var i=0;i<rows.length;i++){
        var row= rows[1];
       if(!exists(rows,row.parentId)){
            nodes.push({
                id:row.id.
               text:row.name
});
}
}
var toDo = [];
    for(var i=0; i<nodes.length; i++){
    toDo.push(nodes[i]);
    }
    while(toDo.length){
    var node = toDo.shift();// the parent node
    // get the children nodes
    for(var i=0; i<rows.length; i++){
    var row = rows[i];
    if (row.parentId == node.id){
    var child = {id:row.id,text:row.name};
    if (node.children){
    node.children.push(child);
    } else {
    node.children = [child];
    }
    toDo.push(child);
    }
    }
    }
    return nodes;

}


----------------------------------------struts.xml-------------------------------------------

<action name="Tree" class=" test.Tree" method="getList">
<result  type="json">
   <param name="root">responseJson</param>
</result>
</action>


---------------------------后台代码----------------------------------------------------------

======action==========

package test;
import java.util.*;
import net.sf.json.JSONArray;
import com.opensymphony.xwork2.Action;
import dao.TreeSearch;
public class Tree {

public JSONArray responseJson;
public JSONArray getResponseJson() {
return responseJson;
}

public void setResponseJson(JSONArray responseJson) {
this.responseJson = responseJson;
}

private TreeSearch ts;

public String getList(){
ts= new TreeSearch();
//Map map= new HashMap();
JSONArray jsonArray = new JSONArray();
jsonArray=ts.map();

//JSONObject jsonObject = JSONObject.fromObject(map);

this.setResponseJson(jsonArray);
return Action.SUCCESS;

}

}


++++++++++++++TreeSearch++++++++++++++


package dao;


import java.sql.ResultSet;
import java.util.*;


import net.sf.json.JSONArray;


import tools.rschangelist;
import database.connection;


public class TreeSearch {
    private connection con= null;
    private rschangelist rl= null;
    public TreeSearch(){
    con=  new connection();
    rl = new rschangelist();
    
    }
    public JSONArray map(){
    Map map = new HashMap();
    JSONArray jsonArray = new JSONArray();
    List list= new ArrayList();
    String sql= "select *from tree";
    try {
ResultSet rs= con.executequery(sql);
list= rl.converList(rs);
jsonArray = JSONArray.fromObject(list);
System.out.println(jsonArray);
map.put("rows", list);
} catch (Exception e) {
e.printStackTrace();
}
return jsonArray;

}
}


--------------------------------Result转换成List------------------------------------

package tools;


import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.*;


public class rschangelist {
public List converList(ResultSet rs) throws SQLException{
List list = new ArrayList();
ResultSetMetaData md =rs.getMetaData();
int columCount= md.getColumnCount();//Map rowdata
while (rs.next()) { //rowData = new HashMap(columnCount);  
 
Map rowData = new HashMap();  
  
for (int i = 1; i <= columCount; i++) {  
  
rowData.put(md.getColumnName(i), rs.getObject(i));  
  
}  
  
list.add(rowData); 


}
return list;
}

}


========================j结果


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值