关于zTree的节点数据来源问题
用zTree在Jsp页面中生成一颗树时,需要一个JSON类型的节点数据,如下:
var zNodes =
[
{ id:1, pId:0, name:"can check 1", open:true},
{ id:11, pId:1, name:"can check 1-1"},
{ id:12, pId:1, name:"can check 1-2", open:true},
{ id:121, pId:12, name:"can check 1-2-1", checked:true},
{ id:122, pId:12, name:"can check 1-2-2"},
{ id:123, pId:12, name:"can check 1-2-3"},
{ id:13, pId:1, name:"can check 1-3"},
{ id:2, pId:0, name:"can check 2", open:true},
{ id:21, pId:2, name:"can check 2-1"},
{ id:22, pId:2, name:"can check 2-2", open:true},
{ id:221, pId:22, name:"can check 2-2-1", checked:true},
{ id:222, pId:22, name:"can check 2-2-2"},
{ id:223, pId:22, name:"can check 2-2-3"},
{ id:23, pId:2, name:"can check 2-3", checked:true}
];
先想问,如何在后台Servlet中生成一个JSON类型的zTree节点数据,然后传给Jsp页面使用。
多原始的方法,多笨的方法多可以,求赐教!!!!!
大神们,快来,明晚我想下班?
------解决方案--------------------循环节点的数据组装成json规范的字符串格式,传给前台的js或者后台都可以
------解决方案--------------------我不是给了你一个手写的js树吗,怎么?不喜欢呀?
------解决方案--------------------window.onload = function() {
loadTree();
};
/**加载树形菜单*/
function loadTree() {
setLoadGress("加载数据", "正在加载,请稍候...", 150, 60);
menuAjax.getMainMenus(function(result) {
createTree("divTree", result, "getJson()");
closeLoadGress();
});
}
function getJson() {
setLoadGress("加载数据", "正在加载,请稍候...", 150, 60);
menuAjax.getJson(getV("hdfPickTreeId"), function(result) {
createTree3(result);
closeLoadGress();
});
}
效果图:
/img/2013/04/25/0931386.png
------解决方案--------------------------解决方案--------------------数据库里面的字段就按照数的节点来建,然后list 查出来在用arrayjson。tostring(具体记不清了) 转一下,前台在eval下,建议你下个ztree 看看,有实例,有API
------解决方案--------------------官方的例子已经讲得很详细了,你需要的只不过是沉下心来看和琢磨而已了,不要怕累。
如果官方的例子你都看不懂的话,那么其它任何人,除非能够面对面的教你,否则你也是不懂的。
------解决方案--------------------代码都帖在那儿了,就这么点代码,超简单的,下面一个方法是实现异步加载的,还是看不懂?
效果图也贴那儿了,好不好,你说了算!
------解决方案--------------------别着急 看这文档来啊
------解决方案--------------------
http://www.ztree.me/v3/demo.php#_101 有DEMO 有API ztree 主要就是jquery 写的