让 Asp 与 XML 交互

XML 是标准扩展语言,是 未来Web编程的标准,asp 是现在广为流传的web编程语言之一,能不能让他们
两个联合起来发挥作用呢?豆腐 在 这里 给大家 提供一个 很简单的 例子
关于XML 和 XSL 限于篇幅和知识水平 豆腐就不在这里 献丑了
下面首先来 说说 几个需要用到的文件的 内容

testXsl.xsl:

 1<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
 2<xsl:template match="/">
 3<html>
 4<body>
 5<xsl:for-each select="PERSONNEL/PERSON">
 6<xsl:choose>
 7<xsl:when match=".[FG='boy']">
 8<input type="text"/>
 9<xsl:attribute name="value">
10<xsl:value-of select="NAME"></xsl:value-of>
11</xsl:attribute>
12</xsl:when>
13<xsl:otherwise match=".[FG='girl']">
14<font color="red"><li><xsl:value-of select="NAME"></xsl:value-of></li></font>
15</xsl:otherwise>
16<xsl:otherwise>
17<font color="blue"><xsl:value-of select="NAME"></xsl:value-of></font>
18</xsl:otherwise>
19</xsl:choose>
20</xsl:for-each>
21</body>
22</html>
23</xsl:template>
24</xsl:stylesheet>

testXML.xml:

 1<personnel>
 2<person>
 3<name>男性</name>
 4<fg>boy</fg>
 5</person>
 6<person>
 7<name>女性</name>
 8<fg>girl</fg>
 9</person>
10<person>
11<name>呵呵,这个可不好说</name>
12<fg>donot know</fg>
13</person>
14</personnel>

testXML.asp

 1   
 2set xml = Server.CreateObject("Microsoft.XMLDOM")   
 3xml.async = false   
 4xml.load(server.mappath("testXML.xml"))   
 5  
 6set xsl = Server.CreateObject("Microsoft.XMLDOM")   
 7xsl.async = false   
 8xsl.load(server.mappath("testXSL.xsl"))   
 9  
10Response.Write(xml.transformNode(xsl))   
11  

对照这个例子,我们主要来讲一下 testXML.asp 文件
set xml = Server.CreateObject("Microsoft.XMLDOM")
set xsl = Server.CreateObject("Microsoft.XMLDOM")
用来分别创建一个xml和xsl的实例,其中xml.load(server.mappath("testXML.xml"))用来加载
包含数据的xml文件,xsl.load(server.mappath("testXSL.xsl"))用来加载包含数据规则的xsl
文件,最终利用xml.transformNode(xsl)将前面的规则使用在XML文件中
运行的演示在:
http://www.asp888.net/study/testXML.asp
整个文件的下载在:http://www.asp888.net/download/asp/xml/testXML.zip

原作者:豆腐
来 源:www.asp888.net

Published At
Categories with Web编程
Tagged with
comments powered by Disqus