jquery的ztree

1,首先需要增加jquery的一些css和js
如:<link rel="stylesheet" type="text/css" href="public/css/zTreeStyle/zTreeStyle.css">
<link rel="stylesheet" type="text/css" href="public/css/icon.css">
  </head>
  <script type="text/javascript" src="public/js/jquery-1.4.2.min.js"></script>
  <script type="text/javascript" src="public/js/jquery.ztree.core-3.0.min.js"></script>
  <script type="text/javascript" src="public/js/json2.js"></script>


2 有一个id的ul标签,同时带有class
如:<ul id="tree" class="ztree" >
  </ul>
3 js中进行设置,通过ajax返回数据。
如:function btn_b1_click(){
  var name="xcl";
  var url="login!getJson?name="+name;
  jQuery.ajax({
  url:url,
  type:"post",
  dataType:"json",
  success:function getSuccess(data){
  //alert(JSONdata);
  //alert(JSON.stringify(data));
  //alert(data.rtn_value);
  rtn_value=data.rtn_result;
  //alert(rtn_value);
  $.fn.zTree.init($("#tree"),setting,rtn_value);//初始化过程
  }
  });
}


4 设置setting:
如:var treeObj,setting={
  data:{
  key:{
  title:'t'
  },
  simpleData:{
  enable:true
  }
 
  },
  callback:{
  onClick:onClick1
  }
  };
 
  function onClick1(event,treeId,treeNode,clickFlag){
  alert(treeNode.id);
  }


5 后台java语句,必须是json格式的,要像:
{"rtn_result":[{"id":1,"pId":0,"name":"name01","t":"t01"},{"id":2,"pId":1,"name":"name11","t":"t11"},{"id":3,"pId":2,"name":"name21","t":"t21"},{"id":4,"pId":3,"name":"name31","t":"t31"},{"id":5,"pId":4,"name":"name41","t":"t41"},{"id":6,"pId":5,"name":"name51","t":"t51"},{"id":7,"pId":6,"name":"name61","t":"t61"},{"id":8,"pId":7,"name":"name71","t":"t71"},{"id":9,"pId":8,"name":"name81","t":"t81"},{"id":10,"pId":9,"name":"name91","t":"t91"}]}
设置了id和pId则自动会处理父子关系的节点。在上一步中设置了key中的title为t,则表示t的值作为显示的内容。
如:public String getJson(){
HttpServletRequest request=ServletActionContext.getRequest();
HttpServletResponse response=ServletActionContext.getResponse();
response.setContentType("text/json;charset=utf-8");
response.setHeader("Cache-Control", "no-cache");
try {
PrintWriter out=response.getWriter();
String name=request.getParameter("name");
name=name+"--xcl";
JSONObject json=new JSONObject();
//json.element("rtn_value",name);

JSONArray jsonArray=new JSONArray();

for(int i=0;i<10;i++){
JSONObject json1=new JSONObject();
json1.element("id",i+1);
json1.element("pId",i);
json1.element("name","name"+i+1);
json1.element("t","t"+i+1);
jsonArray.add(json1);
}
json.element("rtn_result",jsonArray);
System.out.println(json.toString());
out.append(json.toString());
out.flush();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值