开发工具与关键技术:MyEclipse 10、JAVA
作者:曾浩源
撰写时间:2019年05月27日
1、在jsp页面内使用自定义标签获取项目连接
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:set value="${pageContext.request.contextPath}" scope="page" var="ctx"></c:set>
2、调用树形插件和jQuery插件
<link href="${ctx}/plug-in/ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet"/>
<script src="${ctx}/js/jquery-2.0.3.min.js"></script>
<script src="${ctx}/plug-in/ztree/js/jquery.ztree.all.min.js"></script>
3、写html语句
<ul id="CommodityClass" class="ztree"></ul>
4、写js语句
<script type="text/javascript">
var CommodityTreeId, CommodityClassId, CommodityTreeName;
$(function () {
$.ajax({
type: "Post",
url: "${ctx}/servlet/CommodityServlet?type=ComClass",
//async: false,
success: function (data) {
//字符串转json
$.fn.zTree.init($("#CommodityClass"), setting, jQuery.parseJSON(data));
}
});
})
//角色树形插件的基本配置
var setting = {
view: {
dblClickExpand: false,
},
data: {
simpleData: {
enable: true,
idKey: "id",
}
},
callback: {
onClick: RolesOnClick
}
};
function RolesOnClick(event, treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("CommodityClass");
zTree.expandNode(treeNode);
CommodityTreeId = parseInt(treeNode.id);
CommodityClassId = parseInt(treeNode.pId);
CommodityTreeName = treeNode.name;
}
})
</script>
url: "${ctx}/servlet/CommodityServlet?type=ComClass",
5、上面的链接请求到CommodityServlet里,所以在CommodityServlet.java做处理;
判断type值,为ComClass,调用ComClass()方法:
public void ComClass(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
List<Map<String, Object>> jsonlist = new ArrayList<Map<String, Object>>();
ICommodityClassService classService = new CommodityClassServiceImpl();
//查询该树形表所有数据
List<CommodityClass> classes = classService.findAll();
for (CommodityClass commodityClass : classes) {
Map<String, Object> map = new TreeMap<String, Object>();
map.put("id", commodityClass.getCommodityTypeID());
map.put("pId", commodityClass.getComTypeClass());
map.put("name", commodityClass.getComType());
jsonlist.add(map);
}
//使用jar包内JSONArray
JSONArray jsonArray=JSONArray.fromObject(jsonlist);
PrintWriter out = resp.getWriter();
//转到jsp页面是字符串,所以需要在jsp进行处理转为json
out.write(jsonArray.toString());
out.flush();
out.close();
}