XSLT中条件判断用xsl:if(单条件二元判断)和xsl:choose(多分支互斥选择);前者无else,后者含xsl:when和可选xsl:otherwise,适用场景与嵌套规范明确。

XSLT 中做条件判断主要靠 xsl:if 和 xsl:choose 两个元素,它们用途不同、结构不同,选错容易让模板逻辑变乱或漏输出。
xsl:if:单条件判断,满足就执行
它最像编程里的 if 语句,只处理“是/否”这种二元判断,没有 else 分支。test 属性必须是 XPath 表达式,结果为 true 才执行内部内容。
- 表达式为真才输出,否则跳过整块 —— 不会报错,也不会默认输出空内容
- 支持嵌套使用,但不推荐多层嵌套,可读性差且难维护
- 常见写法如:
<if test="price > 10"><p>高价商品</p></if> - 注意:字符串比较要用引号,比如
test="status = 'active'";属性访问加 @,如test="@type = 'vip'"
xsl:choose:多分支选择,类似 if-else if-else
当要根据多个互斥条件输出不同内容时,
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~