http://expert.csdn.net/Expert/TopicView1.asp?id=1642644

解决方案 »

  1.   

    <%@ page contentType="text/html; charset=GBK" %>
    <%@ page language="java"%>
    <%@ page import="java.util.*,Net.*" %>
    <jsp:useBean id="NetNodeInfo" scope="session" class="Net.NetNodeInfo" />
    <jsp:useBean id="ObjectInfo" scope="session" class="Net.ObjectInfo" />
    <html>
    <body>
    <head><style>
    <!--
    #foldheader{cursor:hand ; font-weight:bold ;
    list-style-image:url('image/fold.gif')}
    #foldinglist{list-style-image:url('image/list.gif')}
    //-->
    </style>
    <script language="JavaScript">
    <!--//以下可以改为你的图标
    var head="display:''"
    img1=new Image()
    img1.src="./image/fold.gif"
    img2=new Image()
    img2.src="./image/open.gif"function change(){
       if(!document.all)
          return
       if (event.srcElement.id=="foldheader") {
          var srcIndex = event.srcElement.sourceIndex
          var nested = document.all[srcIndex+1]
          if (nested.style.display=="none") {
             nested.style.display=''
             event.srcElement.style.listStyleImage="url(open.gif)"
          }
          else {
             nested.style.display="none"
             event.srcElement.style.listStyleImage="url(fold.gif)"
          }
       }
    }
    document.onclick=change//--></script></head><body><ul>
     <%
        NetNodeInfo netNode = new NetNodeInfo();
        cNetNode nodeData;
    netNode.OpenDb();
        for(int j=0;j<netNode.GetRecordCount();j++)
    {
        nodeData = (cNetNode)netNode.GetRecord(j);
      %>   <li id="foldheader"><%= nodeData.strNetName %></li>
           <%
                ObjectInfo netInfo = new ObjectInfo();
    cObject data;  
    netInfo.OpenDb(nodeData.NetIndex);
                for(int i=0;i<netInfo.GetRecordCount();i++)
    {
    data = (cObject)netInfo.GetRecord(i);

    %>
          <li id="foldinglist" style="display:none">
      
          <li><font color="#FF0000"><%= data.strObIpad %></font></li>
     <%}%>    <%}%>
            </li><script language="JavaScript">
    <!--
    /**
     * Get cookie routine by Shelley Powers 
     * ([email protected])
     */
    function get_cookie(Name) {
      var search = Name + "="
      var returnvalue = "";
      if (document.cookie.length > 0) {
        offset = document.cookie.indexOf(search)
        // if cookie exists
        if (offset != -1) { 
          offset += search.length
          // set index of beginning of value
          end = document.cookie.indexOf(";", offset);
          // set index of end of cookie value
          if (end == -1) end = document.cookie.length;
          returnvalue=unescape(document.cookie.substring(offset, end))
          }
       }
      return returnvalue;
    }if (get_cookie(window.location.pathname) != ''){
      var openresults=get_cookie(window.location.pathname).split(" ")
      for (i=0 ; i < openresults.length ; i++){
        foldinglist[openresults[i]].style.display=''
        document.all[foldinglist[openresults[i]].sourceIndex -
    1].style.listStyleImage="url(open.gif)"
      }
    }if (document.all){
      var nodelength=foldinglist.length-1
      var nodes=new Array(nodelength)
      var openones=''
    }function check(){
      for (i=0 ; i <= nodelength ; i++){
        if (foldinglist[i].style.display=='')
           openones=openones + " " + i
      }
      document.cookie=window.location.pathname+"="+openones
    }if (document.all)
      document.body.onunload=check
    //-->
    </script>
    </body>
    </html>
      

  2.   

    大家看看我这个代码,是根据数据库显示树的。
    <li id="foldinglist" style="display:none">
      
          <li><font color="#FF0000"><%= data.strObIpad %></font></li>
    是显示枝的,如果把他改成<ul id="foldinglist" style="display:none">
    他就可以显示树,但是数据显不全,改<li>数据可以显示出,数就出不来了,其实他们不就是无序清单和清单项目的区别吗?怎么会这样呢?大家救救我!
      

  3.   

    功能最强,使用最方便的目录树程序:
    http://www.9499.net?go=tc
      

  4.   

    to :木子园 [email protected],谢谢!