总的来说还得使用到Microsoft的ActiveX
创建XML对象:createObject("Microsoft.XMLDOM")
读取节点:selectSingleNode("nodename") //nodename为节点名。
读取属性:attributes.getNamedItem("attribute") //attribute为节点中所具有的属性名。
加载Xml文档:Load(Server.MapPath("XMLPath.xml"))  

我写成了一个类,代码如下:

 1使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'■■■■■■■■■■■■■■■■■■■■■■■■
 2使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'                                               ■
 3使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'                 读取XML数据岛                   ■
 4使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'                                               ■
 5使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'■■■■■■■■■■■■■■■  By Maple  ■■■
 6使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Class XMLReader
 7使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    Private xmlDoc
 8使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
 9使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '类初始化,创建XMLDOM对象,构造函数
10使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    private Sub Class_initialize()
11使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        '创建XMLDOM对象
12使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        Set xmlDoc = Server.CreateObject("Microsoft.XMLDOM")
13使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        '设置是否可以异步读取
14使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        xmlDoc.async = False
15使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    End Sub
16使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
17使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '设置XML物理路径
18使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    Public Sub LoadXML(ByVal XPath)
19使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        xmlDoc.Load(Server.MapPath(XPath))    
20使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    End Sub
21使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
22使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '在类终止时候释放XMLDOM对象
23使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    Public Sub Class_Terminate()
24使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        Set xmlDoc = Nothing
25使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    End Sub
26使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
27使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '选择单个节点
28使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    Public Function SelectSingleNode(ByVal NodeName)
29使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        Set SelectSingleNode = Doc.SelectSingleNode(NodeName)
30使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    End Function
31使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
32使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '取得节点下子节点的总数
33使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    Public Function getNodeCount(Node)
34使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        getNodeCount = Node.Length
35使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    End Function
36使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
37使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
38使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '〓〓〓〓〓〓〓〓〓〓 过程作用解释 〓〓〓〓〓〓〓〓〓〓
39使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '〓                                                     〓
40使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '〓                    读取网页菜单列表                 〓
41使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '〓                                                     〓
42使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    '〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓  By Maple  〓〓〓
43使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    Public Sub getWebMenu(xPath)
44使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        '调用Load传入XML物理路径
45使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        LoadXML(xPath)
46使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        set root = xmlDoc.documentElement
47使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        set nodeList = root.childNodes.item(0).childNodes
48使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        NodeCount = getNodeCount(nodeList)
49使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
50使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        For i = 1 to nodeCount 
51使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        '取得下一个节点的值
52使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            set node = nodeList.nextNode()
53使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        '    set cost = node.attributes.getNamedItem("cost")
54使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            Response.Write("<a href=""")
55使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            Response.Write(Node.SelectSingleNode("URL").Text)
56使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            Response.Write(""">")
57使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            '取得单独的一个节点(Name)的文本
58使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            Response.Write(node.SelectSingleNode("Name").Text)
59使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            
60使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            '判断是否为最后一条记录,设置界面所用
61使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            If nodeCount - i <> 0 Then
62使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单                Response.Write("</a>&nbsp;|"& vbcrlf
63使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            Else
64使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单                Response.Write("</a>"& vbcrlf
65使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            End If
66使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            
67使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        Next
68使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    End Sub
69使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
70使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    Public Function SelectNodes(ByVal XPath)
71使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        Set SelectNodes = Xml.SelectNodes(XPath)
72使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    End Function
73使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单End Class


XML文件:
 

 1使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单<?xml version="1.0" encoding="UTF-8"?>
 2使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单<Bluesky>
 3使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
 4使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    <MentList>
 5使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <Link ID="1">
 6使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <Name>首页</Name>
 7使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <URL>/</URL>
 8使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        </Link>
 9使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <Link ID="2">
10使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <Name>信息查询</Name>
11使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <URL>?Class=Service</URL>
12使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        </Link>
13使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <Link ID="3">
14使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <Name>文章中心</Name>
15使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <URL>?Class=Article</URL>
16使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        </Link>
17使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <Link ID="4">
18使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <Name>网页特效</Name>
19使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <URL>?Class=JScript</URL>
20使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        </Link>
21使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <Link ID="5">
22使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <Name>网站收藏夹</Name>
23使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <URL>?Class=Favorite</URL>
24使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        </Link>
25使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <Link ID="6">
26使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <Name>用户讨论区</Name>
27使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单            <URL>?Class=GuestBook</URL>
28使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        </Link>
29使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    </MentList>
30使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
31使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    <PageSize>
32使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <Article>20</Article>
33使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <JScript>20</JScript>
34使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单        <GuestBook>15</GuestBook>
35使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    </PageSize>
36使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单    
37使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单</Bluesky>

在使用时只需要实例化该类,便可以使用。

set objDoc = new xmlReader
objDoc.getWebMenu("XML路径")

这样就可以调用该方法并显示网站的菜单页面了

因本人水平有限,如果你有更好的方法不妨交流和改正下,让偶也学习学习先。。

==================================================================

以下代码是在百度问到的,方法有点不一样,吸取了好的地方!!

 1使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 首先定义和创建XML对象 
 2使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Dim oXML,oXMLRoot,oXMLItems,oXMLLinks,oXMLItem,iLength,i 
 3使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
 4使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXML = CreateObject("Microsoft.XMLDOM"'// 或 MSXML2.DOMDocument 
 5使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
 6使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 然后加载XML文档 
 7使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单oXML.load "XML文件地址" '// 或:oXML.loadXML "XML内容" 
 8使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
 9使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 内容加载完成后,现在来加载它的节点信息 
10使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 获取XML所有节点 
11使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
12使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXMLRoot = oXML.documentElement 
13使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 获取节点 
14使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXMLItems = oXMLRoot.selectNodes("MentList"
15使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
16使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 此时oXMLItems 变量中已经包含了所有MentList节点的内容。 
17使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 如果要获取它下面的 Link 节点的话,用以下语句 
18使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 获取节点,设 MentList 节点只有一个,那么0即是它的内容 
19使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单oXMLLinks = oXMLItems(0).selectNodes("Link"
20使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 获取节点长度(个数) 
21使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单iLength = oXMLLinks.length - 1 
22使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单
23使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单For i = 0 To iLength 
24使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXMLItem = oXMLLinks.item(i) 
25使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 用 getAttribute 方法来获取它的属性值 
26使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Response.write oXMLItem.getAttribute("ID"
27使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 用 selectSingleNode 方法来获取它的节点值 
28使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Response.write oXMLItem.selectSingleNode("Name").text 
29使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Response.write oXMLItem.selectSingleNode("URL").text 
30使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Next 
31使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单'// 释放XML对象 
32使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXMLItem = Nothing 
33使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXMLLinks = Nothing 
34使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXMLItems = Nothing 
35使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXMLRoot = Nothing 
36使用 Asp(vbs) 来读取 XML 数据岛 来制作网站菜单Set oXML = Nothing 

相关文章:

  • 2022-12-23
  • 2021-07-21
  • 2021-07-21
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-10
猜你喜欢
  • 2022-01-06
  • 2021-06-06
  • 2021-10-11
  • 2021-10-16
  • 2022-12-23
  • 2021-12-28
  • 2022-12-23
相关资源
相似解决方案