?? ? 平时开发中,经常用到异步加载树,每次用到都是重新下,虽然说每次实现的方式都换了,都不一样,但也是费时间,这次项目中又用到了,所以整理一下,以备后用。这次用到了jquery插件 easyui-tree,还是挺方便的,展现的是一棵异步产品树,tree.jsp ? ? ?服务端代码,用了struts2,通过json方式返回(注意,客户端会默认将节点id传给服务端,所以树节点都必须带id属性): ?<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<% String path=request.getContextPath(); %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>产品树</title>
<link type="text/css" rel="stylesheet" href="<%=path%>/css/easyui/themes/default/easyui.css">
<link type="text/css" rel="stylesheet" href="<%=path%>/css/easyui/themes/icon.css">
<script type="text/javascript" src="<%=path%>/css/easyui/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="<%=path%>/css/easyui/jquery.easyui.min.js"></script>
<script type="text/javascript">
$(function(){
$('#tt').tree({
url: '<%=path%>/meta/productCodeTree.action'
});
});
</script>
</head>
<body>
<ul id="tt"></ul>
</body>
</html>
public void productCodeTree(){
try {
ProductCodeExample pce = new ProductCodeExample();
pce.setOrderByClause(" product_py ");
if(!StringUtil.isNullOrEmpty(id)){
pce.createCriteria().andParentCodeEqualTo(id);
}else{
pce.createCriteria().andParentCodeIsNull();
}
List<ProductCode> pcList = this.productCodeDao.selectByExample(pce);
List<Map<String,Object>> items = new ArrayList<Map<String,Object>>();
for(ProductCode pc:pcList){
Map<String,Object> item = new HashMap<String,Object>();
item.put("id", pc.getProductCode());
item.put("text", pc.getProductName());
pce.clear();
pce.createCriteria().andParentCodeEqualTo(pc.getProductCode());
if(productCodeDao.countByExample(pce)>0)
item.put("state", "closed");
items.add(item);
}
JSONArray json = JSONArray.fromObject(items);
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("application/json;charset=UTF-8");
response.setCharacterEncoding("utf-8");
response.setHeader("Charset", "utf-8");
response.setHeader("Cache-Control", "no-cache");
response.getWriter().println(json.toString());
} catch (IOException e) {
e.printStackTrace();
}
}
?
详细解决方案
jquery-easyui-tree 兑现异步加载树
热度:220 发布时间:2012-11-09 10:18:48.0
1 楼
a380725424
2011-06-08
哥们 有木有可运行的例子 thankds
2 楼
a380725424
2011-06-08
哥们你的技术太牛逼了 我的邮箱是zhangzh@freadi.com 收到速回
3 楼
java麦克斯泰
2012-01-04
给的例子 都是不出来的 你又何必 写他呢 你想自己看 就设置私有的
相关解决方案
- jquery 获取jsp页面的id解决方法
- jquery,二维数组取值。解决办法
- 求jquery.form.js+jquery.validate.min.js 用ajax提交表单的代码范例
- jquery 提交form表单不用插件的那种 如何提交
- jquery ajax回传没有值,该怎么处理
- jquery easyUI datagrid struts2有关问题
- jquery form 有关问题
- springmvc jquery ajax 提交复杂对象,415异常解决办法
- 应用Struts2 与 jquery,ajax验证用户注册,不用从数据库获取数据
- jquery ajax select解决方法
- php jquery check username ajax检察帐号唯一性
- jquery ajax返回值的有关问题
- jquery 或js 获取指定字符间的字符串,并轮换。回答出来的是大神级~
- jquery 的bind里面能不能获得返回值呢? 对小弟我很难的有关问题啊
- jquery 的uploadify下传图片怎么让出错信息提示成中文
- java+jquery easy ui + json + struts分页例子
- jquery easyui分页效率有关问题
- jquery 如何获得动态添加后的子元素个数?
- jQuery.ajax()请求struts2数据 回到data值了undefined
- 关于Struts2 jQuery Plugin的 Result,该如何处理
- Jquery 点击按钮实现图片翻页,该如何解决
- jquery 关于监听checkbox的选中和不选中事件,该如何解决
- jQuery append动态添加的页面对象如何处理刷新掉
- Jquery+json解决思路
- jquery post有关问题
- 求大神解决偏题 - jquery ajax
- jquery $.ajax有关问题
- jquery td遍历有关问题
- jquery ui taps有关问题,求解!
- jquery easyui 如何设置标题列居左,里面的数据列居右