当前位置: 首页 > 网络学院 > XML相关教程 > XSL/XSLT > XSLT <xsl:when> 元素
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, an action is performed.
<xsl:when>元素作用是:为<xsl:choose>元素指定一个具体的执行方式。<xsl:when>元素将对一个表达式做出评估,如果返回 true,那么将按照指定的方式执行。
Note: The <xsl:when> element is used in conjunction with <xsl:choose> and <xsl:otherwise> to express multiple conditional tests.
注意:<xsl:when>元素是与<xsl:choose> 和 <xsl:otherwise>相互配合使用来表达多个情况测试操作。
<xsl:when test="boolean-expression"> <!-- Content: template --> </xsl:when> |
属性 | 值 | 描述 |
---|---|---|
test | boolean-expression | Required. Specifies a Boolean expression to be tested 必要参数。指定一个逻辑表达式,用于是否执行测试操作 |
The code below will add a pink background-color to the artist column WHEN the price of the cd is higher than 10.
当CD价格高于10时,下述代码将向artist列中添加一个粉红的背景色:
<?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>'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> |
Declare a variable named "color". Set its value to the color attribute of the current element. If the current element has no color attribute, the value of "color" will be "green":
声明一个"color"变量。将它的值设置为当前"color[颜色]"属性值;如果当前元素不包含"color"属性,那么"color"值将自动被设置为 "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> |