<xsl:choose> 元素

<xsl:otherwise> 元素和 <xsl:when> 元素一同测试多个条件。

<xsl:choose>
</xsl:choose>

元素信息

出现次数

无限制

父元素

xsl:attributexsl:commentxsl:copyxsl:elementxsl:fallbackxsl:for-eachxsl:ifxsl:messagexsl:otherwisexsl:paramxsl:processing-instructionxsl:templatexsl:variablexsl:whenxsl:with-param、输出元素

子元素

xsl:otherwisexsl:when

备注

将按照从上到下的顺序测试 <xsl:choose> 元素的 <xsl:when> 子级,直到其中一个元素上的 test 属性准确地说明源数据中的条件,或直到遇到 <xsl:otherwise> 元素。 在选择了 <xsl:when><xsl:otherwise> 元素之后,将退出 <xsl:choose> 块。 不需要明确的中断或退出语句。

对于简单条件测试,请使用 <xsl:if> 元素。

示例

以下示例显示 <order> 元素的模板,并在每个 <order> 的内容之前插入一个大小指示器。 该大小指示器基于每个 <order> 元素中 <total> 元素的值。 如果总计小于 10,则添加文本“(small)”。 如果总计小于 20,则添加文本“(medium)”。 如果总计大于等于 20,则添加文本“(large)”。

XML 文件 (order.xml)

XSLT 文件 (refchoose.xsl)

输出

(small) 9

(medium) 19

(large) 29