我想做个树型结构

时间:2022-03-17 21:41:28
地区字段lcode
第一类地区01,02,03,04...
子类是0101,0102,0103...
孙类是010101,010102,010103...
即想实现出来效果是
01
  0101
    010101
    010102
    010103
  0102
  0103
02
03
04
不知这样的效果在asp里怎么实现呢?

1 个解决方案

#1



<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<script language="vbscript">
<!--
sub check(a)
  if a.style.display ="none" then
    a.style.display="block"
   else
    a.style.display="none"
  end if  
end sub
-->
</script>
<BODY   Link=DarkBlue vLink=DarkBlue aLink=Black  bgColor=#E1FBFF>
<TABLE WIDTH="100%" BORDER=0 CELLSPACING=1 CELLPADDING=1 style="HEIGHT: 455px ">
  <TR width="100%">
  <TD width="20%" valign=top>
   <TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=1>      
    <TR>
    <TD align=center bgcolor=Silver></TD>
    </TR>
    <TR>
    <TD align=center bgcolor=Silver><b>图 书 分 类</b></TD>
    </TR>
   </TABLE> 
   <%
   k=0
   h=0
   j=0
   
   set conn=server.CreateObject ("adodb.connection")
   conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../fangkai.mdb")
   sqlstr="select * from masttype  order by subcode"
   set temprs=conn.Execute (sqlstr)
' 库名 在父目录中的FANGKAI.MDB
' 表名 MASTTYPE
'说明:数据库内有三个字段 TYPENAME(C,50),SUBCODE(C,3),HAVESUB(N,1)
'                   表示    类名         类码         子目录是否须按钮
'依据类码长度来分,注,该方案采用 A~Z 所以只须一位,采用 A AA,AB AAA,AAB  BAA,BAB 方式
   do while not temprs.eof
     k=k+1
     if LEN(TEMPRS("SUBCODE").VALUE)=1 then
       if k>1 then
         Response.Write "</div>"
         Response.Write "</div>"
       end if
       %>
       <INPUT type="button" value="+" id=button<%=k%> name=button1 onclick=check(layer<%=k%>) style="HEIGHT: 20px; WIDTH: 20px">&nbsp;<%=temprs("TYPENAME")%><br>
       <div id="Layer<%=k%>" style="DISPLAY :none">
       <% 
       h=0  
     end if
     if LEN(TEMPRS("SUBCODE").VALUE)=2 then
       h=h+1
       if h>1 and j>0 then
         Response.Write "</div>"
       end if
       if not TEMPRS("HAVESUB").VALUE=0 then  'HAVESUB=0时表示直接显示子类,不设按钮.
         %>
         <FONT size="2"><B>&nbsp;&nbsp;<INPUT type="button" value="+" id=button<%=k*100+h%>  _
         name=button1 onclick=check(layer<%=k*100+h%>) style="HEIGHT: 15px; WIDTH: 15px">&nbsp;<%=temprs("TYPENAME")%></B></FONT><br>
         <div id="Layer<%=k*100+h%>" style="DISPLAY :none">
         <% 
         t=0
        else%>
         <FONT size="2"><B>&nbsp;&nbsp;<a href="listgood.asp?subcode=<%=temprs("SUBcode").value%>"target="center"><%=temprs("TYPEname").value%></a></B></FONT><br>
         <%
         t=1
       end if  
       j=0
     end if  
     if LEN(TEMPRS("SUBCODE").VALUE)=3 and t=0 then
       j=j+1
      %>
       <small>&nbsp;&nbsp;&nbsp;&nbsp;<a href="listgood.asp?subcode=<%=temprs("subcode").value%>"target="center"><%=temprs("TYPEname").value%></a></small><br>
       <%
     END IF
     temprs.movenext
   loop
   temprs.close
   set temprs=nothing
   conn.close
   set conn=nothing
   '以下为一个分帧,显示该类下的详细信息.
   %>
   </TD>
   <TD width="80%" valign=top>
     <iframe src="listgood.asp" style  ="HEIGHT: 449px; WIDTH: 630px"name="center"> 
     </iframe>
   </TD>
  </TR>
</TABLE></p>
</BODY>
</HTML>

如果不好理解,可以发EMAIL 到_25475360@21CN.COM

#1



<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<script language="vbscript">
<!--
sub check(a)
  if a.style.display ="none" then
    a.style.display="block"
   else
    a.style.display="none"
  end if  
end sub
-->
</script>
<BODY   Link=DarkBlue vLink=DarkBlue aLink=Black  bgColor=#E1FBFF>
<TABLE WIDTH="100%" BORDER=0 CELLSPACING=1 CELLPADDING=1 style="HEIGHT: 455px ">
  <TR width="100%">
  <TD width="20%" valign=top>
   <TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=1>      
    <TR>
    <TD align=center bgcolor=Silver></TD>
    </TR>
    <TR>
    <TD align=center bgcolor=Silver><b>图 书 分 类</b></TD>
    </TR>
   </TABLE> 
   <%
   k=0
   h=0
   j=0
   
   set conn=server.CreateObject ("adodb.connection")
   conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../fangkai.mdb")
   sqlstr="select * from masttype  order by subcode"
   set temprs=conn.Execute (sqlstr)
' 库名 在父目录中的FANGKAI.MDB
' 表名 MASTTYPE
'说明:数据库内有三个字段 TYPENAME(C,50),SUBCODE(C,3),HAVESUB(N,1)
'                   表示    类名         类码         子目录是否须按钮
'依据类码长度来分,注,该方案采用 A~Z 所以只须一位,采用 A AA,AB AAA,AAB  BAA,BAB 方式
   do while not temprs.eof
     k=k+1
     if LEN(TEMPRS("SUBCODE").VALUE)=1 then
       if k>1 then
         Response.Write "</div>"
         Response.Write "</div>"
       end if
       %>
       <INPUT type="button" value="+" id=button<%=k%> name=button1 onclick=check(layer<%=k%>) style="HEIGHT: 20px; WIDTH: 20px">&nbsp;<%=temprs("TYPENAME")%><br>
       <div id="Layer<%=k%>" style="DISPLAY :none">
       <% 
       h=0  
     end if
     if LEN(TEMPRS("SUBCODE").VALUE)=2 then
       h=h+1
       if h>1 and j>0 then
         Response.Write "</div>"
       end if
       if not TEMPRS("HAVESUB").VALUE=0 then  'HAVESUB=0时表示直接显示子类,不设按钮.
         %>
         <FONT size="2"><B>&nbsp;&nbsp;<INPUT type="button" value="+" id=button<%=k*100+h%>  _
         name=button1 onclick=check(layer<%=k*100+h%>) style="HEIGHT: 15px; WIDTH: 15px">&nbsp;<%=temprs("TYPENAME")%></B></FONT><br>
         <div id="Layer<%=k*100+h%>" style="DISPLAY :none">
         <% 
         t=0
        else%>
         <FONT size="2"><B>&nbsp;&nbsp;<a href="listgood.asp?subcode=<%=temprs("SUBcode").value%>"target="center"><%=temprs("TYPEname").value%></a></B></FONT><br>
         <%
         t=1
       end if  
       j=0
     end if  
     if LEN(TEMPRS("SUBCODE").VALUE)=3 and t=0 then
       j=j+1
      %>
       <small>&nbsp;&nbsp;&nbsp;&nbsp;<a href="listgood.asp?subcode=<%=temprs("subcode").value%>"target="center"><%=temprs("TYPEname").value%></a></small><br>
       <%
     END IF
     temprs.movenext
   loop
   temprs.close
   set temprs=nothing
   conn.close
   set conn=nothing
   '以下为一个分帧,显示该类下的详细信息.
   %>
   </TD>
   <TD width="80%" valign=top>
     <iframe src="listgood.asp" style  ="HEIGHT: 449px; WIDTH: 630px"name="center"> 
     </iframe>
   </TD>
  </TR>
</TABLE></p>
</BODY>
</HTML>

如果不好理解,可以发EMAIL 到_25475360@21CN.COM