USA/COUNTRY
COMPANYColumbia/COMPANY
PRICE10.90/PRICE
YEAR1985/YEAR
/CD
.
.
.
要想放置一个对文件内容的条件测试if命令,只需要向XSL文档中增加一个xsl:if元素,如下:
xsl:if match=".[ARTIST='Bob Dylan']"
... 一些输出...
/xsl:if
现在看一下经过轻微调整的XSL样式表:
?xml version='1.0'?
xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"
xsl:template match="/"
html
body
table border="2" bgcolor="yellow"
tr
thTitle/th
thArtist/th
/tr
xsl:for-each select="CATALOG/CD"
xsl:if match=".[ARTIST='Bob Dylan']"
tr
tdxsl:value-of select="TITLE"//td
tdxsl:value-of select="ARTIST"//td
/tr
/xsl:if
/xsl:for-each
/table
/body
/html
/xsl:template
/xsl:stylesheet
在浏览器中转换
以下是(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/) body
table border="2" bgcolor="yellow"
tr
thTitle/th
thArtist/th
/tr
xsl:for-each select="CATALOG/CD"
tr
tdxsl:value-of select="TITLE"//td
xsl:choose
xsl:when match=".[ARTIST='Bob Dylan']"
td bgcolor="#ff0000"
xsl:value-of select="ARTIST"/
/td
/xsl:when
xsl:otherwise
tdxsl:value-of select="ARTIST"//td
/xsl:otherwise
/xsl:choose
/tr
/xsl:for-each
/table
/body
/html
/xsl:template
/xsl:stylesheet
在浏览器中转换
以下是在浏览器中将XML文件转换成HTML所需要的简单代码:
html
body
script language="javascript"
// Load XML
var xml = new ActiveXObject("Microsoft.XMLDOM")
xml.async = false
xml.load("cd_catalog.xml")
// Load the XSL
var xsl = new ActiveXObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load("cd_catalog_choose.xsl")
// Transform
document.write(xml.transformNode(xsl))
/script
/body
/html
如果使用的是Internet Explorer 5.0 或更高版本,请点击这里查看结果。