XSL简明教程(7)XSL 的控制语句 原著:Jan Egil Refsnes 翻译:阿捷
七. XSL 的控制语句
1.条件语句if...then
XSL同样还有条件语句(呵呵~~好厉害吧,象程序语言相同)。详细的语法是增加一个xsl:if元素,类似这样
<xsl:if match=".[ARTIST=\\'Bob Dylan\\']">
... some output ...
</xsl:if>
上面的例子改写成为:
<?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>
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="CATALOG/CD">
<xsl:if match=".[ARTIST=\\'Bob Dylan\\']">
<tr>
<td><xsl:value-of select="TITLE"/></td>
<td><xsl:value-of select="ARTIST"/></td>
</tr>
</xsl:if>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
2. XSL 的Choose
choose的用途是出现多个条件,给出不同显示结果。详细的语法是增加一组xsl:choose,xsl:when,xsl:otherwise元素:
<xsl:choose>
<xsl:when match=".[ARTIST=\\'Bob Dylan\\']">
... some code ...
</xsl:when>
<xsl:otherwise>
... some code ....
</xsl:otherwise>
</xsl:choose>
上面的例子改写成为:
<?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>
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="CATALOG/CD">
<tr>
<td><xsl: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>
<td><xsl:value-of select="ARTIST"/></td>
</xsl:otherwise>
</xsl:choose>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet> 返回类别: 教程 上一教程: XML CDATA的作用 下一教程: XML Schema用法(1)
您可以阅读与"XSL简明教程(7)XSL 的控制语句"相关的教程: · XSL简明教程(1)XSL入门 · XSL简明教程(6)XSL过滤和查询 · XSL简明教程(4)在服务器端的实现 · XSL简明教程(2)XSL转变 · XSL简明教程(5)XSL的索引
|