XSLT <xsl:when>Element


XSLT 元素参考手册Complete XSLT Element Reference Manual

Definition and Usage

The <xsl:when> element is used to specify an action for the <xsl:choose> element. The <xsl:when> element evaluates an expression, and if it returns true, the specified action is executed.

Note:The <xsl:when> element is used together with the <xsl:choose> element and the <xsl:otherwise> element to express multiple conditional tests.


Syntax

<xsl:when
test="boolean-expression">

<!-- Content: template -->

</xsl:when>

Attributes

Attributes Value Description
test boolean-expression Required. Specifies the boolean expression to test.

Example 1

The following code will add a pink background color to the artist column when the price of cd is higher than 10.

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<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 test="price&gt;'10'">
<td bgcolor="#ff00ff">
<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>

View XML file、 View XSL file、 View result。

Example 2

Declares a variable named "color". Assigns its value to the color attribute of the current element. If the current element does not have a color attribute, the value of "color" will be "green":

<xsl:variable name="color">
<xsl:choose>
<xsl:when test="@color">
<xsl:value-of select="@color"/>
</xsl:when>
<xsl:otherwise>green</xsl:otherwise>
</xsl:choose>
</xsl:variable>


XSLT 元素参考手册Complete XSLT Element Reference Manual Other extensions