DTree is so so great!! - 小新的blog^_^ - 5dblog.com

DTree is so so great!!
我的文档[原创]2006-5-27 18:4
虽然说项目已经告一段落了,上个星期还是忙。搞定权限,优化代码,搭配外网运行环境。不满意权限树的超级无敌慢,自己摞起袖子上阵,还好有个DTree。自己还得抽空写文档。
最大的收获还是dtree,其实以前也曾经注意到DTree,不过那时候没有真正的用在实际的开发中,也没有太放到心上。感谢http://www.destroydrop.com。
这个dTree果然是非常的不错,正是我寻找的基于客户端的树。在MVC框架下这种基于客户端处理的树更是体现出了它的优势,而且在需要对树的效率进行优化时候也更有空间。
你只需要把需要显示的树的节点(s)传到客户端,其他的交给dTree来做。


根据dtree的javascript可以随意扩展,如下ex_dtree.js做简单的扩展:
---------------- ex_dtree.js -------------
function getRootId(root){
return root.aNodes[0].id;
}
function getRootName(root){
return root.aNodes[0].name;
}
function getSelectedId(root){
return root.aNodes[root.selectedNode].id;
}
function getSelectedNode(root){
alert(root.aNodes[root.selectedNode].name +"--"+ root.aNodes[root.selectedNode].id );
alert(root.selectedNode);
}
function getParentId(root){
return root.aNodes[root.selectedNode].pid;
}
function isSomeNodeSelected(root){
return (root.selectedNode == null || root.selectedNode == "undefined");
}
function forwardDelete(root){
if(isSomeNodeSelected(root)){
alert("请选中要删除的节点!");
return;
}
location.href = "tree.delete.do?rootid=" + getRootId(root) + "&rootname=" + getRootName(root) + "&id=" + getSelectedId(root);
}
function forwardAdd(root){
forwardUrl = "tree.treeadd.istjsp?rootid=" + getRootId(root) + "&rootname=" + getRootName(root) + "&parentId=" + getSelectedId(root);
parent.main.location.href = forwardUrl;
}
function forwardDetail(root){
if(isSomeNodeSelected(root)){
alert("请选中要修改的节点!");
return;
}
forwardUrl = "tree.detail.do?rootid=" + getRootId(root) + "&rootname=" + getRootName(root) + "&id=" + getSelectedId(root);
parent.main.location.href = forwardUrl;
}

一下树的显示页面
----------------  treedisplay.jsp -------------------------------













href="commoncss/dtree.css" type="text/css" rel="StyleSheet" />

<script type="text/javascript" src="commonjs/dtree.js"></script>

<script type="text/javascript" src="commonjs/ex_dtree.js"></script>

<script language="javascript" src="commonjs/popmenu.js"></script>

<script language="javascript">

function doRedirect(url){

parent.main.location.href=url;

}

</script>











本文转自
http://blog.5d.cn/user1/bluelover/200605/262788.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值