XML 是标准扩展语言,是 未来Web编程的标准,asp 是现在广为流传的web编程语言之一,能不能让他们 两个联合起来发挥作用呢?豆腐 在 这里 给大家 提供一个 很简单的 例子 关于XML 和 XSL 限于篇幅和知识水平 豆腐就不在这里 献丑了 下面首先来 说说 几个需要用到的文件的 内容
testXsl.xsl:
<?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <xsl:template match="/"> <html> <body> <xsl:for-each select="PERSONNEL/PERSON"> <xsl:choose> <xsl:when match=".[FG='boy']"> <input type="text"> <xsl:attribute name="value"> <xsl:value-of select="NAME"/> </xsl:attribute> </input> <br/> </xsl:when> <xsl:otherwise match=".[FG='girl']"> <font color="red"><li><xsl:value-of select="NAME"/></li></font> <br/> </xsl:otherwise> <xsl:otherwise> <font color="blue"><xsl:value-of select="NAME"/></font> </xsl:otherwise> </xsl:choose>
</xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>
testXML.xml: <?xml version="1.0" encoding="gb2312" ?> <PERSONNEL> <PERSON> <NAME>男性</NAME> <FG>boy</FG> </PERSON> <PERSON> <NAME>女性</NAME> <FG>girl</FG> </PERSON> <PERSON> <NAME>呵呵,这个可不好说</NAME> <FG>donot know</FG> </PERSON> </PERSONNEL>
testXML.asp
<% set xml = Server.CreateObject("Microsoft.XMLDOM") xml.async = false xml.load(server.mappath("testXML.xml"))
set xsl = Server.CreateObject("Microsoft.XMLDOM") xsl.async = false xsl.load(server.mappath("testXSL.xsl"))
Response.Write(xml.transformNode(xsl))
%>
对照这个例子,我们主要来讲一下 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
|