动态载入asp树源码
时间:2007-09-06 19:34:00
一个动态载入asp树源码。把 node.htc, style.css 保存与 css 目录下. index.asp subtree.asp 放与根目录.
另新建一ACCESS数据库 tree.mdb
表deeptree 结构为 id,content, parentid,link
页面: index.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%Option Explicit%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>tree</title>
<link href="css/style.css" rel="stylesheet" type="text/css">
<script language="JavaScript">
<!--
var d1,d2;
function expand(id)
{
var d=new Date();
d1=d.valueOf();
var s_id = eval("s" + id);
var dir_id = eval("dir" + id);
if(s_id.href != ’’)
{
//window.open(s_id.href);
//or
//top.frames[’FrameName’].location.href = s_id.href;
}
switch(dir_id.open)
{
//改变"+","-"
case "true":
{
with(dir_id)
{
innerText = "+";
open = "false";
className = ’dirclose’;
}
if(document.getElementById("t" + id))
{
eval("t"+id).style.display = ’none’;
document.getElementById("load_" + id).style.display = ’none’;
return;
}
else
{
document.getElementById("load_" + id).style.display = ’none’;
}
break;
}
case "false":
{
with(dir_id)
{
innerText = "-";
open = "true";
className = ’diropen’;
}
document.getElementById("load_" + id).style.display = ’’;
if(document.getElementById("t" + id))
{
eval("t" + id).style.display = ’’;
eval("load_" + id).style.display = ’none’;
return;
}
else
{
document.frames[’hifm’].location.replace("subtree.asp?id=" + id);
}
break;
}
default:dir_id.innerText = "."; dir_id.className = ’dirNode’; return;
}
}
function ArrToHtml(ArrNode,nodeid)
{
//输出到页面
var node_html = ’<table id="t’ + nodeid + ’" width="100%" border="0" style="position: relative; left: 18px;" cellspacing="0" cellpadding="0">’;
var str,opened,cls
for (var i = 0; i < ArrNode.length; i++)
{
if (ArrNode[i].iChildren == 0)
{
str = ’.’;
opened = ’no’;
cls = ’dirNode’;
}
else
{
str = ’+’;
opened = ’false’;
cls = ’dirclose’;
}
node_html += ’<tr><td id="node’ + ArrNode[i].id + ’" class="td_node" valign="top"><span class="’ + cls + ’" id="dir’ + ArrNode[i].id + ’" onclick="expand(’ + ArrNode[i].id + ’)" open="’ + opened + ’">’ + str + ’</span><span class="node" id="s’ + ArrNode[i].id + ’" onclick="expand(’ + ArrNode[i].id + ’)" title="’ + ArrNode[i].Content + ’" href="’ + ArrNode[i].strLink + ’">’ + ArrNode[i].Content + ’</span></td></tr>’;
if (ArrNode[i].iChildren > 0)
{
node_html += ’<tr id="load_’ + ArrNode[i].id + ’" style="display: none"><td class="td_node"><table border="0" cellspacing="0" cellpadding="0" style="position: relative; left: 18; top: 0px"><tr><td class="td_node"><span class="dirNode">.</span><span class="load">Loading...</span></td></tr></table></td></tr>’;
}
}
node_html += ’</table>’;
if (document.getElementById("load_" + nodeid))
{
document.getElementById("load_" + nodeid).style.display = "none";
document.getElementById("node" + nodeid).innerHTML += node_html;
var d=new Date();
d2=d.valueOf();
message.innerHTML = "耗时:"+(d2-d1)+"ms";
}
}
-->
</script>
</head>
<body topmargin="0" leftmargin="0" scroll="yes">
<%
Dim conn,rs
Dim s,open,cls
On Error Resume Next
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.mappath("tree/tree.mdb") & ";Persist Security Info=False"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "select *,(select count(*) from deeptree where parentid = T.id) as children from deeptree T where parentid=0 order by parentid",conn,1,3
%>
<div id="message" style="height: 20px" align="center"> </div>
<div align="center">
<center>
<table border="0" width="100%" cellspacing="0" cellpadding="0" height="100%" bgcolor="#F2F2F2">
<tr>
<td width="260" valign="top" align="left">
<div id="treedir" style="overflow: auto; width: 30%; height: 100%;">
<table border="0" cellspacing="0" cellpadding="0" style="position: relative; left: 18px; top: 20px;" width="100%">
<%
Do While Not rs.EOF
If rs("children") = 0 Then
s = "."
open = "no"
cls = "dirNode"
Else
s = "+"
open = "false"
cls = "dirclose"
End If
%>
<tr>
<td id="node<% = rs("id")%>" class="td_node" valign="top"><span class="<% = cls %>" id="dir<% = rs("id") %>" onclick="expand(<%=rs("id")%>)" open="<% = open %>"><% = s %></span><span class="node" id="s<% = rs("id") %>" onclick="expand(<% = rs("id") %>)" title="<% = Trim(rs("content")) %>" href="<% = Trim(rs("link")) %>"><% = rs("content") %></span>
</td>
</tr>
<% If rs("children") > 0 Then%>
<tr id="load_<% = rs("id") %>" style="display: none">
<td class="td_node">
<table border="0" cellspacing="0" cellpadding="0" style="position:relative;left:18;top:0" width="100%">
<tr>
<td class="td_node"><span class="dirNode">.</span><span class="load">Loading...</span>
</td>
</tr>
</table>
</td>
</tr>
<%End If%>
<%
rs.MoveNext
Loop
%>
</table>
</div>
</td>
</table>
</center>
</div>
<%
Set rs = Nothing
Set conn = Nothing
%>
<iframe id=’hifm’ width=0 height=0 style="display: none" height="100%" width="100%"></iframe>
</body>
</html>
标签:asp,树
0
投稿
猜你喜欢
numpy中的transpose函数中具体使用方法
2023-04-28 23:46:44
详解Django3中直接添加Websockets方式
2021-01-05 01:43:22
python字符串常见使用操作方法介绍
2023-12-11 00:20:28
Python闭包与装饰器原理及实例解析
2023-04-08 19:44:30
一文读懂Python版本管理工具Pyenv使用
2023-04-23 12:59:17
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
2023-07-13 11:20:21
python ip正则式
2022-02-13 22:13:02
详解python ThreadPoolExecutor异常捕获
2023-08-09 12:54:30
PYQT5 vscode联合操作qtdesigner的方法
2023-10-31 16:46:41
python如何调用字典的key
2023-09-02 01:57:52
python实现弹窗祝福效果
2021-09-08 04:22:15
我的ImageMagick使用心得
2008-10-21 11:05:00
联邦学习论文解读分散数据的深层网络通信
2023-09-06 00:07:37
18个Python脚本可加速你的编码速度(提示和技巧)
2022-11-09 16:54:34
浅谈基于Pytest框架的自动化测试开发实践
2022-12-20 10:02:44
对Python3 * 和 ** 运算符详解
2023-08-05 10:15:27
纯js实现瀑布流布局及ajax动态新增数据
2023-08-08 07:11:23
Python 中如何使用 virtualenv 管理虚拟环境
2022-02-20 00:57:44
用DW8制作网页中常用的过度效果
2007-10-16 12:56:00
pycharm2020.1.2永久破解激活教程,实测有效
2021-11-01 15:17:57