我想做一个树形的组织机构,从数据库中数据,也可以通过xml文件数据传到前台,在jsp界面左半部分显示树形结构,当单击某个节点时,右边显示该节点的页面内容,可以用树形控件,例如dojo树,dhtml树,由于时间有限,我又不是很精通,真的很愁,希望做过相关内容的好心人理解一下帮帮忙,发一个实现相关技术的源代码过来,在下感激不尽!邮箱 [email protected] 

解决方案 »

  1.   

    easyui javascript部分类似这样,其他上官网摸摸
    // 各个节点的属性
    // id: node id, which is important to load remote data
    // text: node text to show
    // state: node state, 'open' or 'closed', default is 'open'. When set to 'closed', the node have children nodes and will load them from remote site
    // checked: Indicate whether the node is checked selected.
    // attributes: custom attributes can be added to a node
    // children: an array nodes defines some children nodes
    $(function(){
    $("#dTreeMenu").tree({
    // 默认加载的目录
    url: "dynamicTree.jsp?target=" + target + "&roleId=<%=strUserName%>&id=0",
    onContextMenu: function(e, node){
    e.preventDefault();
    $('#dTreeMenu').tree('select', node.target);
    $('#mm').menu('show', {
    left: e.pageX,
    top: e.pageY
    });
    },
    // 当点击项目时,则调用此函数
    onClick: function(node){
    // 如果节点不位空且是属于文件夹类型,则向服务器请求对应的子目录
    if(node != null && node.attributes == "folder"){
    var nodes = [];
    var flag;
    $.ajax({
    type: "POST",
    url: "dynamicTree.jsp?target=" + target + "&roleId=<%=strUserName%>&id=" + node.id,
    cache: false,
    dataType: "json",
    async: false,
    success: function(json){
    nodes = json;
    flag = true;
    },
    error: function(XMLHttpRequest, textStatus, errorThrown){
    top.window.location.href = "<%=request.getContextPath()+"/index.jsp" %>";
    }
    });
    var dTree = $("#dTreeMenu");
    var childrenArray = dTree.tree("getChildren",node.target);
    // 清空该目录下原有的子目录
    for(var x = 0;x < childrenArray.length;x++){
    var id = childrenArray[x].id;
    dTree.tree("remove",childrenArray[x].target);
    }
    // 添加新的子目录
    dTree.tree("append",{
            parent:node.target,
            data:nodes
    });

    }
    }
    });

    });