关于ztree的一点感悟

来源:互联网 发布:uefitool for mac 编辑:程序博客网 时间:2024/04/30 07:35
   当数据库建好后,又有一个问题摆在面前了,关于树形菜单的搭建及显示,java中,有现成的组件可供使用,那就是zTree,http://www.ztree.me/v3/main.php#_zTreeInfo,刚开始接触的时候完全不知道怎么下手,不过在下载的文件中提供了很多模板可供使用,使用之前需要导入js包,jquery.ztree.core-3.5.js。拿到模板的时候发现,它所有的节点都是写在js中的,从模板中也不难发现,它的结构就是通过id和PID来确定这种层级关系的,但是我需要的是要能够从数据库中动态的读取我想要的节点,这时我发现ztree支持json数据传输格式,这个是ztree的配置的一部分,其中view主要用于配置显示的效果,showline:是否显示虚线,showIcon:是否显示图标。。。callback为回调函数,
像上面的onclick函数,就是点击ztree 的节点给出的反馈,当然这其中可以使用Ajax异步加载传到servlet中进行相关的业务操作。
在此servlet中进行数据的读取工作,调用response的方法,把值回传给JSP,也就是JSP中 的data,可以对data再做相关的操作。好,现在回头看看节点怎么从数据库中读出来?
(无视乱码),本段代码使用jQuery中的$.ajax()方法,具体参数及设置方法详见http://blog.sina.com.cn/s/blog_4f925fc30100la36.html,success:要求为Function类型的参数,请求成功后调用的回调函数,有两个参数,这里只用到了一个,也就是servlet中的返回数据,
同样是调用response中的方法,不过这里要把要回传的数据封装成json的形式,需要import  net.sf.json.JSONArray,但是json形式的数据要满足{id:1, pId:0, name:"test1"}的形式,其中name的值一定要加“”才能分辨name:"+"\""+category2.getName()+"\"".
这时回到success函数中,把以json形式返回的data放到treeNodes(这应该不能改)中方可显示。至此,关于ztree的节点动态加载,及右边页面显示的问题先是解决了,目前自己对于ztree的了解也不是很多,只是有个大概的了解。




0 0