PC6下载站

分类分类

我写的一段递归生成类似Windows资源管理器一样效果的树状菜单的代码,请指正

关注+2004-10-07作者:蓝点


            
             
              
             
            

               
               

            



            





<%
    dim dbConn
    dim IDIndex
    
    IDIndex = 0
    
    '建立数据库连接
    Set dbConn = Server.CreateObject("Adodb.Connection")
    dbConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("test.mdb")
    
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ''生成文件类型树的递归函数,传入参数:NowItem为树节点的ID   ''
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Sub DoItem(NowItem)
        dim rsTest
        dim YoungerBrother    '下一个兄弟节点的ID
        dim OlderSon        '第一个字节点的ID
        
        '建立记录集
        set rsTest = Server.CreateObject("Adodb.recordset")
    
        '生成sql语句,操作Doc_TypeTree表
        strSql = "select * from tab_test where ID = '" & NowItem & "'"
    
        '生成记录集
        rsTest.open strSql,dbConn,1,3
        
        if rsTest.eof then
            rsTest.close
            set recDosType = nothing
            exit sub
        end if
        
        YoungerBrother = trim(rsTest("BrotherNode") & "")
        OlderSon = trim(rsTest("SonNode") & "")
        NodeID = trim(rsTest("ID") & "")
        NodeName = trim(rsTest("NodeName") & "")
        
        '显示子节点
        if OlderSon = "" or OlderSon = "00" then    '当此项无子项时,输出相应的代码
            response.write "" & chr(10)
            response.write " " & chr(10)
            response.write ""
              response.write "" & NodeName & ""              
                response.write "" & chr(10)
            response.write "" & chr(10)        
        else        
            '*1.显示本项内容
            response.write "" & chr(10)
            response.write "                        "Content" & IDIndex & "," & _
                        "img" & IDIndex & "," & _
                        "Aux" & IDIndex & ");>" & chr(10)            
              response.write "" & chr(10)
                response.write "" & chr(10)
            response.write "" & chr(10)
              response.write "" & NodeName & _
                          "
" & chr(10)
                response.write "" & chr(10)
            response.write "" & chr(10)
            
            '*2.输出子孙树头代码
            response.write "" & chr(10)
            response.write " " & chr(10)
            response.write "" & chr(10)
            response.write ""
            IDIndex = IDIndex + 1
        
            '*3.输出子孙树代码
            call    DoItem(OlderSon)
            
            '*4.输出子孙树尾代码
            response.write "
"
            response.write "" & chr(10)
            response.write "" & chr(10)
        end if
        
        if YoungerBrother <> "" and YoungerBrother <> "00" then
            call DoItem(YoungerBrother)
        end if        
                
        rsTest.close
        set rsTest = nothing
    end Sub
    
    response.write ""
    call DoItem("01")
    response.write "
"
    
    dbConn.close
    set dbConn = nothing
%>

展开全部

相关文章

更多+相同厂商

热门推荐

  • 最新排行
  • 最热排行
  • 评分最高
排行榜

    点击查看更多

      点击查看更多

        点击查看更多

        说两句网友评论

          我要评论...
          取消