📄 实现网站导航.txt
字号:
无标题文档
mysites.xml文件
<?xml version="1.0" encoding="gb2312"?>
<mysites>
<site>
<topic>新闻</topic>
<name>sina</name>
<url>http://www.sina.com</url>
</site>
<site>
<topic>体育</topic>
<name>nease</name>
<url>http://www.163.com</url>
</site>
<site>
<topic>新闻</topic>
<name>sohu</name>
<url>http://www.sohu.com</url>
</site>
<site>
<topic>计算机</topic>
<name>COL</name>
<url>http://www.263.net</url>
</site>
<site>
<topic>计算机</topic>
<name>Microsoft</name>
<url>http://www.microsoft.com</url>
</site>
<site>
<topic>体育</topic>
<name>sports</name>
<url>http://www.sports.com</url>
</site>
<site>
<topic>计算机</topic>
<name>Computer</name>
<url>http://www.Computer.com</url>
</site>
<site>
<topic>聊天</topic>
<name>chat</name>
<url>http://chat.263.net</url>
</site>
<site><topic>计算机</topic><name>NCTC</name><url>http://www.getjob.com.cn</url></site></mysites>
index.asp文件
<%
'set buffering to true
response.buffer = true%>
<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
<!--
function getTopic()
{
// 检测选中的下拉列表项
selInd = document.theForm.sites.selectedIndex;
// 获取相应的URL地址
goURL = document.theForm.sites.options[selInd].value;
// 将参数传递给search.asp,并跳转到Search.asp网页
location.href="search.asp?topic="+goURL
}
//-->
</SCRIPT>
<style>
a{text-decoration:none}
a:hover{text-decoration:underline}
</style>
<title>XML&Asp</title>
</head>
<body bgcolor=beige>
<%
'创建Microsoft XMLDOM对象
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.async = False
'装载XML文件
objXML.Load(Server.MapPath("data/mysites.xml"))
'获取根元素对应的列表
Set objLst = objXML.getElementsByTagName("site")
'获取项目列表长度
intNoOfHeadlines = objLst.length
%>
Pick a topic:
<form name="theForm">
<select name="sites" onchange="getTopic()">
<%
'添加下拉列表框
for i = 0 to intNoOfHeadlines-1
Set objHdl = objLst.item(i)
'获取site内第一个元素(Topic元素)的名称
selectItem = objHdl.childNodes(0).text
'防止下拉列表框中出现重复
if Instr(1, selectTemp, selectItem)=0 then
%>
<option value="<%=selectItem%>"><%=selectItem%></option>
<%
'SelectTemp中保存了所有列表项目之和
selectTemp = selectTemp & selectItem
end if
Next
%>
</select>
<br><br>
<a href="index1.asp">See all Topics</a>
</form>
</body>
</html>
index1.asp文件
<%
response.buffer = true%>
<html>
<head>
<style>
a{text-decoration:none}
a:hover{text-decoration:underline}
</style>
</head>
<body bgcolor=beige>
<%
'创建Microsft XMLDom对象
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.async = False
'装载XML文件中数据
objXML.Load(Server.MapPath("data/mysites.xml"))
'读取site元素中数据
Set objLst = objXML.getElementsByTagName("site")
'总共的元素数
intNoOfHeadlines = objLst.length
'将所有的元素显示在表格中
'表头
Response.Write " <table border=4 bordercolor=orange align=center width='80%'>"
Response.write "<tr align=center
bgcolor=orange><td><B>Topic</B></td><td><B>Name</b></td><td><B>Url</B></td></tr>"
'显示其余信息
for i = 0 to intNoOfHeadlines-1
Set objHdl = objLst.item(i)
'Topic元素
response.write "<tr><td>" & objHdl.childNodes(0).text & "</td>"
'Name元素
response.write "<td>" & "<a href='"& objHdl.childNodes(2).text &"'>" &
objHdl.childNodes(1).text & "</a></td>"
'URL元素
response.write "<td>" & objHdl.childNodes(2).text & "</td></tr>"
Next
response.write "</table>"
response.write "<br><center><a href='add.asp'>Add Site</a> | <a
href=index.asp>Homepage</a></center>"
%>
</body>
</htmL>
search.asp
<%response.buffer = true%>
<%
%>
<html>
<head>
<style>
a{text-decoration:none}
a:hover{text-decoration:underline}
</style>
</head>
<body bgcolor=beige>
<%
'创建XMLDOM对象
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.async = False
'读取XML文件中数据
objXML.Load(Server.MapPath("data/mysites.xml"))
Dim strSearch, objXML, rootNode, childNode, match
strSearch = Request.querystring("topic")
Set objLst = objXML.getElementsByTagName("site")
'总共的元素数
intNoOfHeadlines = objLst.length
'显示
Response.Write "<center><table border=4 bordercolor=orange width=""80%"">"
response.write "<tr align=center
bgcolor=orange><td><B>Topic</B></td><td><B>Name</b></td><td><B>Url</B></td></tr>"
for i = 0 to intNoOfHeadlines-1
Set objHdl = objLst.item(i)
'如果site元素和搜索字符串相符,进行输出
if objHdl.childNodes(0).text = strSearch then
response.write "<tr><td>" & objHdl.childNodes(0).text & "</td>"
response.write "<td>" & "<a href='"& objHdl.childNodes(2).text &"'>" &
objHdl.childNodes(1).text & "</a></td>"
response.write "<td>" & objHdl.childNodes(2).text & "</td></tr>"
end if
Next
response.write "</table>"
response.write "<br><a href='add.asp'>Add Site</a></center>"
%>
</body>
</html>
add.asp文件
<%
'add.asp为一自提交页面,第一次进入,要求输入站点信息,然后提交结果给自己
select case request("action")
case "add"
Dim XmlDoc, Flag, FileName
FileName = Server.MapPath("data/mysites.xml")
Set XmlDoc = CreateObject("Microsoft.XMLDOM")
XmlDoc.async = false
Flag = XmlDoc.Load(filename)
If Flag Then
Dim Element, El2
Set Element = XmlDoc.createElement("site")
Set El2 = XmlDoc.createElement("topic")
El2.text = request.form("topic")
Element.appendChild El2
Set El2 = XmlDoc.createElement("name")
El2.text = request.form("name")
Element.appendChild El2
Set El2 = XmlDoc.createElement("url")
El2.text = request.form("url")
Element.appendChild El2
XmlDoc.documentElement.appendChild Element
'保存修改结果
XmlDoc.save FileName
response.redirect "index1.asp"
End If
end select
%>
<html>
<head>
<Script Language="JavaScript">
function valid()
{
//输入合法性检测
var name = document.addform.name.value;
var url = document.addform.url.value;
var topic = document.addform.topic.value;
if (name=="" || url=="" || topic=="")
{
alert ("请输入站点信息!")
return false
}
}
</Script>
<title>Add</title>
</head>
<body bgcolor=beige>
<table border="4" bordercolor="orange" width="80%">
<tr>
<td colspan=2 align=center><b>Add New Record</b><br><br>
</td>
</tr>
<form name="addform" action="add.asp?action=add" method="post" onsubmit="return
valid()">
<tr>
<td>
Topic.:</td><td><input type="text" name="topic" size=20 maxlength=20>
</td>
</tr>
<tr>
<td>
name:</td><td><input type="text" name="name" size=20 maxlength=40>
</td>
</tr>
<tr>
<td>Url:</td>
<td><input type="text" name="url" size=60 maxlength=50 value="http://"></td>
</tr>
<tr>
<td colspan=2 align="center"><input type="submit" value="add">
</td>
</tr>
</table>
</body>
</html>
注:(1)mysites.xml保存网站信息的XML数据文件
(2)index.asp文件是从XML数据文件中读取站点信息,并以一个下拉列表框显示出来
(3)index1.asp是将XML文件中所有信息以表格的形式显示到浏览器上
(4)search.asp会将用户选中的有关某个主题的信息以表格形式显示出来
(5)add.asp用来在XML数据文件中增添站点信息
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -