一段生成treeview的js代码
演示:http://www.zwtd.com/2/treeview/treeview.asp
<html>
<head>
<title>asp treeview exemple</title>
<meta name="author" content="simon la rochelle">
<meta name="description" content="this is an easy way to make a vb-like treeview in asp">
<script language=javascript>
function toggledisplay(obutton, oitems) {
if ((oitems.style.display == "") || (oitems.style.display == "none")) {
oitems.style.display = "block";
obutton.src = "minus.gif";
} else {
oitems.style.display = "none";
obutton.src = "plus.gif";
}
return false;
}
function hidedisplay(oitems) {
oitems.style.display = "none";
}
function showdisplay(oitems) {
oitems.style.display = "block";
}
</script>
</head>
<body bgcolor=#ffffff>
<form action=treeview.asp method=post>
<%
heres the first exemple (without checkboxes and links)
writehead "mytreeview",1,"exemple1",0,true,false,"",false
writehead "mytreeview",2,"child1",1,true,false,"",false
writehead "mytreeview",3,"child1-a",2,false,false,"",false
writefoot
writehead "mytreeview",4,"child1-b",2,false,false,"",false
writefoot
writehead "mytreeview",5,"child1-c",2,false,false,"",false
writefoot
writehead "mytreeview",6,"child1-d",2,false,false,"",false
writefoot
writefoot
writehead "mytreeview",7,"child2",1,false,false,"",false
writefoot
writehead "mytreeview",8,"child3",1,false,false,"",false
writefoot
writehead "mytreeview",9,"child4",1,false,false,"",false
writefoot
writehead "mytreeview",10,"child5",1,false,false,"",false
writefoot
writefoot
response.write "<p>"
heres the second exemple (with checkboxes)
writehead "my2treeview",1,"exemple2",0,true,false,"",false
writehead "my2treeview",2,"child1",1,true,false,"",false
writehead "my2treeview",3,"child1-a",2,false,true,"",false
writefoot
writehead "my2treeview",4,"child1-b",2,false,true,"",false
writefoot
writehead "my2treeview",5,"child1-c",2,false,true,"",false
writefoot
writehead "my2treeview",6,"child1-d",2,false,true,"",false
writefoot
writefoot
writehead "my2treeview",7,"child2",1,false,true,"",false
writefoot
writehead "my2treeview",8,"child3",1,false,true,"",false
writefoot
writehead "my2treeview",9,"child4",1,false,true,"",false
writefoot
writehead "my2treeview",10,"child5",1,false,true,"",false
writefoot
writefoot
response.write "<p>"
heres the third exemple (with links)
writehead "my3treeview",1,"development sites",0,true,false,"",true
writehead "my3treeview",2,"planet source code",1,true,false,"http://www.planetsourcecode.com",false
writehead "my3treeview",3,"visual basic",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.1/qx/vb/default.htm",false
writefoot
writehead "my3treeview",4,"java / javascript",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.2/qx/vb/default.htm",false
writefoot
writehead "my3treeview",5,"c / c++",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.3/qx/vb/default.htm",false
writefoot
writehead "my3treeview",6,"asp / vbscript",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.4/qx/vb/default.htm",false
writefoot
writehead "my3treeview",7,"sql",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.5/qx/vb/default.htm",false
writefoot
writehead "my3treeview",8,"perl",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.6/qx/vb/default.htm",false
writefoot
writehead "my3treeview",9,"delphi",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.7/qx/vb/default.htm",false
writefoot
writehead "my3treeview",10,"php",2,false,false,"http://www.planetsourcecode.com/xq/asp/lngwid.8/qx/vb/default.htm",false
writefoot
writefoot
writehead "my3treeview",11,"devx",1,false,false,"http://www.devx.com",false
writefoot
writehead "my3treeview",12,"msdn",1,false,false,"http://msdn.microsoft.com",false
writefoot
writehead "my3treeview",13,"4guysfromrolla",1,false,false,"http://www.4guysfromrolla.com",false
writefoot
writehead "my3treeview",14,"learnasp",1,false,false,"http://www.learnasp.com",false
writefoot
writefoot
%>
</form>
</body>
</html>
<%
*********************************
treeview subs
*********************************
sub writehead(treename,itemid,itemname,level,isparent,usecheckbox,mylink,isopn)
dim isie as boolean
isie = (instr(request.servervariables("http_user_agent"), "msie") > 0)
spacing depends on what level youre at
select case level
case 1 : response.write "<img src=dot1.gif border=0 alt=>"
case 2 : response.write "<img src=t_dot.gif width=36 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 3 : response.write "<img src=t_dot.gif width=72 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 4 : response.write "<img src=t_dot.gif width=108 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 5 : response.write "<img src=t_dot.gif width=144 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 6 : response.write "<img src=t_dot.gif width=180 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 7 : response.write "<img src=t_dot.gif width=216 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 8 : response.write "<img src=t_dot.gif width=252 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 9 : response.write "<img src=t_dot.gif width=288 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
case 10 : response.write "<img src=t_dot.gif width=324 height=18 border=0 alt=><img src=dot1.gif border=0 alt=>"
end select
if isparent then put a plus sign else put a blank space
if isparent then
jscode only if isie
if isie then
if isopn then
response.write "<img src=minus.gif width=12 height=10 id=" & treename & itemid & "btn onclick=javascript:toggledisplay(" & treename & itemid & "btn, " & treename & itemid & "chlds); alt border=0>"
else
response.write "<img src=plus.gif width=12 height=10 id=" & treename & itemid & "btn onclick=javascript:toggledisplay(" & treename & itemid & "btn, " & treename & itemid & "chlds); alt border=0>"
end if
else
if isopn then
response.write "<img src=minus.gif width=12 height=10 id=" & treename & itemid & "btn alt border=0>"
else
response.write "<img src=plus.gif width=12 height=10 id=" & treename & itemid & "btn alt border=0>"
end if
end if
else
if level = 0 then
response.write "<img src=nosign2.gif width=12 height=10 alt border=0>"
else
response.write "<img src=nosign.gif width=12 height=10 alt border=0>"
end if
end if
if usecheckbox then show a checkbox else add space
if usecheckbox then
response.write "<input type=checkbox name=" & treename &"chk value=" & itemid & ">"
else
response.write "<img src=t_dot.gif width=4 height=18 border=0 alt=>"
end if
response.write "<font face=verdana,arial,helvetica size=2 color=#333399>"
if mylink = "" then do not use link
if mylink = "" then
if first level, use bold
if level = 0 then response.write "<b>" & itemname & "</b>" else response.write itemname
else
if first level, use bold
if level = 0 then response.write "<b><a href=" & mylink & "><font color=#333399>" & itemname & "</a></b>" else response.write "<a href=" & mylink & "><font color=#333399>" & itemname & "</a>"
end if
response.write "</font>"
response.write "<br>"
always add div because writefoot() will close it
response.write "<div id=" & treename & itemid & "chlds>"
jscode only if isie and if the section is not open
if isie then
if isopn then
response.write "<script language=javascript>showdisplay(" & treename & itemid & "chlds);</script>"
else
response.write "<script language=javascript>hidedisplay(" & treename & itemid & "chlds);</script>"
end if
end if
end sub
sub writefoot()
response.write "</div>"
end sub
%>
