如何在xsl:when中检查2个条件进行测试

时间:2009-10-31 11:08:20

标签: xslt

我想检查test1和test 2的值。如果test1评估为Yes,则显示Yes,如果test2评估为Yes,则显示Invalid else显示test1的确切值。

我尝试了下面的

<xsl:choose>
    <xsl:when test="$test1 = 'Yes' or 'Yes'">
         <td>
                          Yes
         </td>
    </xsl:when>

    <xsl:when test="$test2 = 'Yes' or 'yes'">
         <td>
                          INVALID
         </td>
    </xsl:when>

    <xsl:otherwise> 
        <td>
            <font size="2">
                f<xsl:apply-templates select="../DBE:Object/DBE:Attribute[@name='test1']"/> 
            </font>
        </td>
    </xsl:otherwise>

</xsl:choose>

但它没有正确评估条件。请提出可能的解决方案。

1 个答案:

答案 0 :(得分:3)

我想你可能正在寻找这样的东西:

<xsl:when test="$test1 = 'Yes' or $test1 = 'yes'">

您必须为每次比较重复$test1 =,否则您的测试条件并不意味着您的意图。