JSP无限分类的具体实现,怎么能自动判断所属的父级分类
表中三个字段
id name childid
1 根目录1 0
2 根目录2 0
3 子目录1 1
4 子目录2 1
5 子目录3 2
6 子目录4 2
…………
ID自动生成的,
childid就是 属于哪个的子分类,就是那个分类的ID编号,
从数据库读回来内容后,
怎么能对他实现自动分类呢,归属哪个类别就在哪个类别的下面.
也就是对分类实现能够无限分类,
查了下,都说用递归实现,
谁能给个例子看下吗,
从数据库查回来内容以后就不会弄了,郁闷.
------解决方案--------------------不是很明白楼主的意思。。。不过如果用ORACLE数据库的话,可以用下面的查询语句进行查询:
SELECT LEVEL, b.* FROM TABLE_NAME b CONNECT BY PRIOR b.id=b.childid START WITH b.childid=0
(有两个建议:第一,childid改名为parentid,因为你这个明显是父节点编号;第二,把childid作一个可以为空的FK,否则你将来会不好处理)
查询得结果:
level id name childid
1 1 根目录1 0
2 3 子目录1 1
2 4 子目录2 1
1 2 根目录2 0
2 5 子目录3 2
2 6 子目录4 2
这样查询出来的就是树形结构了。
如果需要在页面显示,可以用dtree.js控件显示成树形菜单
可以用我写的ctreetable.js控件显示成树形表格
或者用ctreeselector.js控件显示成树形下拉框
(下载地址:http://download.csdn.net/source/171981)
以上控件都不支持数据库动态加载,ctreetable和ctreeselector支持页面动态加载。
如果需要数据库动态加载,可以找找AJAX的树形控件。