xsl:选择检查所有xsl:when条件

时间:2012-04-17 15:49:12

标签: xslt xslt-2.0

有没有办法在第一次<choose>比赛后离开<when>但是继续检查其他情况?

1 个答案:

答案 0 :(得分:14)

我相信这是不行的。正如规范所说:

  

第一个,也是第一个,xsl:when元素的内容   test is true实例化。如果没有xsl:when为true,则为   xsl:otherwise元素被实例化。如果没有xsl:when元素   如果没有xsl:otherwise元素,则不会创建任何内容。

来自:http://www.w3.org/TR/xslt#section-Conditional-Processing-with-xsl:choose

你无法通过其他类似的条件使其堕落。如果您需要通过

,只需将其转换为一组<xsl:if>

<强>更新即可。以下是O'Reilly的XSLT书籍{http://docstore.mik.ua/orelly/xml/xslt/ch04_02.htm)的引用:

  

C,C ++和Java switch语句大致相当于    元件。唯一的例外是程序语言   倾向于使用fallthrough处理。换句话说,如果是一个分支   switch语句的计算结果为true,运行时执行所有操作   直到遇到break语句,即使其中有一些代码是   其他部门的一部分。该元素不起作用   办法。如果给定的计算结果为true,则仅表示语句   里面被评估