easyui tree动态加载

来源:互联网 发布:气质干净的男生知乎 编辑:程序博客网 时间:2024/05/17 04:20

之前用easyui tree做的功能后面由于导入了测试数据,数据一下子庞大了起来,之前写的时候没有使用easyui tree的动态加载功能,结果导致IE果断卡死(坑爹的IE,CHROME完全没压力啊),之后捣鼓了白天去看API弄死弄不出来,后来百度google了一下,在结合自己的项目研究了一下终于搞出来了,上代码:

js

t.tree({url:"/KM3-portlet/html/knowledgePortlet/choiceSubLabel.jsp?groupId=<%=id%>",onBeforeExpand:function(node,param){                      $('#tt<%=j %>').tree('options').url = '/KM3-portlet/html/knowledgePortlet/choiceSubLabel.jsp?id=' + node.id;                                    } });


jsp

<%@page import="com.pisoft.portlet.label.model.Label"%><%@page import="net.sf.json.JSONArray"%><%@page import="java.util.List"%><%@page import="com.pisoft.portlet.label.LabelUtil"%><%@page import="com.pisoft.portlet.label.TreeNode"%><%@ page contentType="text/html; charset=utf-8" %><%String id = request.getParameter("id");String groupId = request.getParameter("groupId");String str = "";if(id==null||"".equals(id)){TreeNode tn = new TreeNode();Label label = LabelUtil.getLabelByGroupId(new Long(groupId));tn.setId(label.getId());tn.setText(label.getName());if(label.getChildNumber()==0){tn.setState("open");}else{tn.setState("closed");}str = JSONArray.fromObject(tn).toString();}else{List<TreeNode> list = LabelUtil.getChildrenByParentId(id);JSONArray json = JSONArray.fromObject(list);str = json.toString();}out.println(str);%> 
总体思路就是刚开始的url不传id自动生成根节点的json,之后的传一个id去查找子节点来生成json,加班了快3个小时啊..而且坑爹的公司没有加班费,情何以堪,后来来到家里面才搞出来,不过总算是告一段落了。


原创粉丝点击