dt.innerHTML='<a href="javascript:void(0)">'+group[i]['t']+'</a>';
改为
dt.innerHTML='<a href="'+(group[i]['links']?group[i]['links']:('javascript:void(0)'))+'">'+group[i]['t']+'</a>';然后
{t:'人力资源',s:[{t:'张A',links:"http://www.google.com.hk/"}]}, 这里加上你要的链接

解决方案 »

  1.   

    dt.innerHTML='<a href="javascript:void(0)">'+group[i]['t']+'</a>'; 吧这个改下就好了
      

  2.   

    if (group[i]['t'] === '张A') {
                        dt.innerHTML = '<a href="http://www.taobao.com" target="_bank">' + group[i]['t'] + '</a>';
                    } else {
                        dt.innerHTML = '<a href="javascript:void(0)">' + group[i]['t'] + '</a>';
                    }这个意思吗?
      

  3.   

    扩展角度来讲,应该从数据源入手,如下 将张A 李B 加上百度链接,加链接只需加 自定义属性link
    <html><head><title>简单的文件树效果</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style type="text/css">.tree{width:200px;border:2px inset #fff;height:400px;padding:5px;overflow:auto;}.tree dd,.tree dt, .tree dl{margin:0;padding:0;overflow:hidden;}.tree dd{margin-left:18px;}.tree dt{background:url(http://www.codefans.net/jscss/demoimg/201111/tree-bg.png) no-repeat 0 0px;padding-left:35px;line-height :20px;height:20px;}.tree dt.node-close{background-position: 0 -24px;}.tree dt.node-open{background-position: 0 -58px;}.tree dt a{color:#000;text-decoration:none;font: 12px/1 verdana;line-height :12px;_line-height :16px;}.tree dt a:hover{background:#0A246A;color:#fff;}</style></head><body><div id="esunTree" class="tree"></div></body><script type="text/javascript">try{document.execCommand("BackgroundImageCache",false,true)}catch(e){};function Tree(data, el) {    this.app=function(par,tag){return par.appendChild(document.createElement(tag))};    this.create(document.getElementById(el),data)};Tree.fn = Tree.prototype = {    create: function (par,group){        var host=this, length = group.length;        for (var i = 0; i < length; i++) {            var dl =this.app(par,'DL'), dt = this.app(dl,'DT'), dd = this.app(dl,'DD');
    var link=group[i].link?group[i].link:'javascript:void(0)';
                dt.innerHTML='<a href="'+link+'">'+group[i].t+'</a>';            if (!group[i]['s'])continue;            dt.group=group[i]['s'];            dt.className+=" node-close";            dt.onclick=function (){                var dd= this.nextSibling;                if (!dd.hasChildNodes()){                     host.create(dd,this.group);                     this.className='node-open'                 }else{                    var set=dd.style.display=='none'?['','node-open']:['none','node-close'];                     dd.style.display=set[0];                     this.className=set[1]                 }            }        }    }};var data=[{        t:'腾讯网络限公司',s:[            {t:'人力资源',s:[{t:'张A',link:'http://www.baidu.com'}]},            {t:'风险控制',s:[{t:'李B',link:'http://www.baidu.com'},{t:'赵C'},{t:'吴D'},{t:'司马E'},{t:'潭F'},{t:'袁G'}]},            {t:'系统平台',s:[{t:'资讯组',s:[{t:'王五'}]},{t:'游戏组',s:[{t:'肖十三'}]}]}        ]    },    {t:'拍拍网',s:[{t:'胡一刀'}]},    {t:'盛大网络',s:[{t:'热血传奇',s:[{t:'在线充值'}]},{t:'陈天桥'}]},    {t:'新浪微博',s:[{t:'凤姐'}]}];var et=new Tree(data,'esunTree'); //]]></script></html>
      

  4.   

    在展开下一个之前,把之前的闭合就行了,你要记住上一个NODE的ID
      

  5.   


    这个可以用,还有个问题,能不能再帮我改下:当一个展开时,另一个自动闭合?<html><head><title>简单的文件树效果</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style type="text/css">.tree{width:200px;border:2px inset #fff;height:400px;padding:5px;overflow:auto;}.tree dd,.tree dt, .tree dl{margin:0;padding:0;overflow:hidden;}.tree dd{margin-left:18px;}.tree dt{background:url(http://www.codefans.net/jscss/demoimg/201111/tree-bg.png) no-repeat 0 0px;padding-left:35px;line-height :20px;height:20px;}.tree dt.node-close{background-position: 0 -24px;}.tree dt.node-open{background-position: 0 -58px;}.tree dt a{color:#000;text-decoration:none;font: 12px/1 verdana;line-height :12px;_line-height :16px;}.tree dt a:hover{background:#0A246A;color:#fff;}</style></head><body><div id="esunTree" class="tree"></div></body><script type="text/javascript">try{document.execCommand("BackgroundImageCache",false,true)}catch(e){};function Tree(data, el) {    this.app=function(par,tag){return par.appendChild(document.createElement(tag))};    this.create(document.getElementById(el),data)};Tree.fn = Tree.prototype = {    create: function (par,group){        var host=this, length = group.length;        for (var i = 0; i < length; i++) {            var dl =this.app(par,'DL'), dt = this.app(dl,'DT'), dd = this.app(dl,'DD');            //dt.innerHTML='<a href="javascript:void(0)">'+group[i]['t']+'</a>';
                dt.innerHTML='<a href="'+(group[i]['links']?group[i]['links']:('javascript:void(0)'))+'">'+group[i]['t']+'</a>';            if (!group[i]['s'])continue;            dt.group=group[i]['s'];            dt.className+=" node-close";            dt.onclick=function (){
                 var iThis = this;
                 var aDt = this.parentNode.parentNode.childNodes;
                 for(var i=0; i<aDt.length; i++){
                     if(aDt[i].nodeName.toLowerCase()=="dl" && aDt[i].getElementsByTagName("dt")[0]!=iThis && aDt[i].getElementsByTagName("dd")[0].innerHTML !=""){
                     aDt[i].getElementsByTagName("dt")[0].className = "node-close";
                     aDt[i].getElementsByTagName("dd")[0].style.display = "none";
                    
                     }
                    }
                    

                    var dd= this.nextSibling;
                   
                    if (!dd.hasChildNodes()){                     host.create(dd,this.group);                     this.className='node-open';
                         dd.style.display = "block";                 }else{
                        var set=dd.style.display=='none'?['block','node-open']:['none','node-close'];                    dd.style.display=set[0];                    this.className=set[1]
                    }

                }        }    }};var data=[{        t:'腾讯网络限公司',s:[            {t:'人力资源',s:[{t:'张A',links:"http://www.google.com.hk/"}]},            {t:'风险控制',s:[{t:'李B'},{t:'赵C'},{t:'吴D'},{t:'司马E'},{t:'潭F'},{t:'袁G'}]},            {t:'系统平台',s:[{t:'资讯组',s:[{t:'王五'}]},{t:'游戏组',s:[{t:'肖十三'}]}]}        ]    },    {t:'拍拍网',s:[{t:'胡一刀'}]},    {t:'盛大网络',s:[{t:'热血传奇',s:[{t:'在线充值'}]},{t:'陈天桥'}]},    {t:'新浪微博',s:[{t:'凤姐'}]}];var et=new Tree(data,'esunTree'); //]]></script></html>