我想根据变量返回的值有条件地更改XML文件中显示的文本的颜色。
它将是“是”或“否”。
这是XML:
<tr style="height: 18px;">
<td style="width: 163px; height: 18px;"><strong>Validation Required?</strong></td>
<td style="width: 50px; height: 18px;"><xsl:value-of select="Validation_Required"></xsl:value-of></td>
<td style="width: 652px; height: 18px;" colspan="4"></td>
</tr>
我希望Validation_Required?
值的文本在值为“是”时显示为红色,而在值为“否”时显示为黑色。
到目前为止,我对这种方法还没有运气:
<xsl:when test="Validation_Required='Yes'">
我想知道是否有人可以指出我正确的方向。
答案 0 :(得分:0)
使用$
前缀访问XSLT中的变量,因此要访问变量Validation_Required
,您必须为其加上前缀。
将代码更改为
<tr style="height: 18px;">
<td style="width: 163px; height: 18px;"><strong>Validation Required?</strong></td>
<td style="width: 50px; height: 18px;">
<xsl:choose>
<xsl:when test="$Validation_Required='Yes'">
<span style="color:rgb(255, 0, 0);">
<xsl:value-of select="$Validation_Required"></xsl:value-of>
</span>
</xsl:when>
<xsl:when test="$Validation_Required='No'">
<span style="color:rgb(0, 0, 0);">
<xsl:value-of select="$Validation_Required"></xsl:value-of>
</span>
</xsl:when>
</xsl:choose>
</td>
<td style="width: 652px; height: 18px;" colspan="4"></td>
</tr>
根据td
变量的值更改一个Validation_Required
元素的颜色。