如果那么XSLT 2.0

时间:2015-04-14 19:12:25

标签: xslt xslt-2.0

在XSLT 2.0中,我们可以使用if if then仅表示no else子句。 <Employee><Status><xsl:value-of select="if (tns:Employee/tns:EmpId = 4) then 'new' else 'old'"/></Status></Employee> 这里如果我不想要else子句,则表示如果empid不是4,则不填充Status字段。什么是xslt?

2 个答案:

答案 0 :(得分:2)

除非我错误地阅读了这个问题,否则只需添加一个空字符串或空序列。

示例......

if (tns:Employee/tns:EmpId = 4) then 'new' else ''

if (tns:Employee/tns:EmpId = 4) then 'new' else ()

答案 1 :(得分:1)

如果您根本不想要任何status,则可以使用XSLT中的标准xsl:if轻松实现此目标(适用于所有版本)

<Employee>
    <xsl:if test="tns:Employee/tns:EmpId = 4">
      <Status>new</Status>
    </xsl:if>
</Employee>