<% '连接数据库 set conn=server.createobject("ADODB.Connection") conn.open "provider=microsoft.jet.oledb.4.0;data source="&server.mappath("File.mdb") '//----------操作分支 Action=Request("Action") Select Case Action Case "Add":If Request("ParentID")<>"" Then Add Case "Del": Del Case "Open":Open Case Else: End Select '//----------显示列表 Public List Set Rs=Conn.Execute("Select * From [List]") If Not Rs.Eof Then List =Rs.GetRows Max=Conn.Execute("Select Count(ParentID) From List Where ParentID=0")(0) Set Rs=Nothing Set Conn=Nothing CheckList 0,Max,"" Else Set Rs=Nothing Set Conn=Nothing End If Response.Write "添加根
" '//------------显示列表函数 FuncTion CheckList(ParentID,Cs,Str1) Dim j j=0 For i=0 To Ubound(List,2) If List(1,i)=ParentID Then Response.write(Str1) If j0 Then Str2=""&Str2&"" If List(5,i)>0 And List(4,i)=False Then Str2=""&Str2&"" Response.Write(Str2) Response.Write ""&List(2,i)&" "&VBcrlf '添加节点链接 Response.Write "添加"&Vbcrlf Response.Write "删除
" If List(4,i)=True Then If j返回" Response.End Exit Function End If Sql="Insert Into List (ParentID,Title,Url,Target) Values ("&Parent&",'"&Title&"','"&Url&"',' "&Target&"')" Conn.Execute(Sql) If Parent<>0 Then Sql="Update List Set ChildNum=ChildNum+1 Where ID="&Parent Conn.Execute(Sql) End IF End Function '//-----切换节点状态 Function Open Sql="Update List Set Flag=Not Flag Where ID="&Clng(Request("Id")) Conn.Execute(Sql) End Function '//-----------删除节点 Function Del On Error Resume Next Id=Clng(Request("ID")) ParentID=Conn.Execute("Select ParentID From List Where ID="&ID)(0) Num=Conn.Execute("Select Count(ID) From List Where parentID="&ID)(0) Conn.Execute("Update List Set ChildNum=ChildNum-1+"&Num&" Where ID="&ParentID) Conn.Execute("Update List Set ParentID="&ParentID&" Where ID in (Select ID From List Where ParentID="&ID&")") Conn.Execute("Delete From List Where ID="&ID) If Err.Number<>0 Then Response.Write "您做的操作无效,可能是该项已经删除!! 返回" Response.End End If End Function %> <% '没有做美化,没有加其它功能,需要者可以自己改好了! 'Create Table List(ID AUTOINCREMENT,ParentID long,Title Text(50),Url Text(50),Flag bit,ChildNum Long,Target Text(10)) '直接在查询里执行就可以得到List表!! '下面是对表的说明 'Id 自动编号 'ParentID 长整形 'Title 文本 'Url 文本 'Flag 布尔 'ChildNum 长整形 'Target 文本,允许空符串 %>