浏览 2977 次
锁定老帖子 主题:关于树型结构返回值,大家都是怎么组织的呢
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-12-22
最后修改:2008-12-22
<menuitem id="11" class="menumain" text="samples" action="samples/gettingstart/forward.do"> <!-- qucik start--> <menuitem menuid="gettingstart" text="sample.getting.start" action="samples/gettingstart/forward.do" contextmenu="true"> <menuitem menuid="forward" text="sample.getting.start.forward" action="samples/gettingstart/forward.do" contextmenu="true"> </menuitem> <menuitem menuid="helloworld" text="sample.getting.start.helloworld" action="samples/gettingstart/hello.do" contextmenu="true"> </menuitem> <menuitem menuid="simpleCRUD" text="sample.getting.start.simpleCRUD" action="samples/gettingstart/message.do" contextmenu="true"> </menuitem> </menuitem> <!-- advanced app --> <menuitem menuid="advancedused" text="sample.advanced.used" action="samples/subject/message.do?method=doList"> <menuitem menuid="dispatchCRUD" text="sample.advanced.used.dispatchCRUD" action="samples/subject/message.do?method=doList"> </menuitem> <menuitem menuid="editable" text="sample.advanced.used.editable" action="samples/subject/editable.do"> </menuitem> </menuitem> </menuitem> 生成到前端后,对树进行一系列操作(拖拽、增加、删除、修改等),然后通过一个保存按钮将当前的树形结构同步回后端(可能基于xml,也可能存回数据库),问题出在如何返回修改后的树,目前想到两种方案,一种是记录每一步操作,封装成一个array往后台传,例如第一步先删除节点a,第二步将节点b移动到节点c下,等等,缺点是如果我进行了过多操作,这数据量会不会太大?第二种方案比较笨,也是目前想采用的方法,就是得到当前simpletree对象的引用,用js取得其html(一堆嵌套的<ul><li>组合),然后通过正则表达式将其替换成原来的xml格式后返回,不知道大家对于这样的业务场景一般怎么处理的? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-12-25
我用的是 treeview 插件
http://bassistance.de/jquery-plugins/jquery-plugin-treeview/ |
|
返回顶楼 | |
发表时间:2008-12-26
刚开始学习jQuery,不大懂什么意思
|
|
返回顶楼 | |
发表时间:2008-12-26
最后修改:2008-12-26
srdrm 写道 我用的是 treeview 插件
http://bassistance.de/jquery-plugins/jquery-plugin-treeview/ 恩,用哪个plugin来组织数据其实大同小异,关键是遇到实际业务需求时,怎样对所用的进行二次定制,目前我们对tree节点批量操作还是采用返回json的方式,定义del,add,mov,dnd四种操作类型。 |
|
返回顶楼 | |
发表时间:2008-12-26
最后修改:2008-12-26
用json数据保存操作,遇到如何解决垃圾操作问题(比如我给某节点添加一叶子,然后删了,再添加,再删,如此反复,到最后其实我啥也没干,但是操作数却急剧上升)。
暂时考虑的是先记录,然后按照一定的清理规则重新洗一遍json中的“脏操作”,比如对同一id的增加和删除相当于没做任何操作,连续修改同一节点n次取最后一次值等等。 还望je高人能提出更好的办法。 |
|
返回顶楼 | |
发表时间:2008-12-27
你的例子能不能传上来?
|
|
返回顶楼 | |