私の XSLT には、この関数があります。これは、2 つの列のどちらかまたは両方にうまく一致します。FieldRef
完全に一致します。
私の問題は、$currentValue
私がテストしているものと決して等しくないように見えることです(私がテストしているのは空白文字列のようです)。
ここでどこが間違っていますか?
<!-- Convert the Fields into a status icons -->
<xsl:template match="FieldRef[@Name='YesNo']|FieldRef[@Name='TrueFalse']" mode="body">
<xsl:param name="thisNode" select="." />
<xsl:variable name="currentValue" select="$thisNode/@*[name()=current()/@Name]" />
<xsl:choose>
<xsl:when test="$currentValue='Yes'">
<span class="yesno yes"><xsl:value-of select="$currentValue" /></span>
</xsl:when>
<xsl:when test="$currentValue='No'">
<span class="yesno no"><xsl:value-of select="$currentValue" /></span>
</xsl:when>
<xsl:when test="$currentValue='True'">
<span class="yesno yes"><xsl:value-of select="$currentValue" /></span>
</xsl:when>
<xsl:when test="$currentValue='False'">
<span class="yesno no"><xsl:value-of select="$currentValue" /></span>
</xsl:when>
<xsl:otherwise>
<span class="yesnoN"><xsl:value-of select="$currentValue" /></span>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
私が知っていることの1つは、私がそうするなら
<xsl:variable name="thisName" select="./@Name" /> select="./@Name" />
次に、(値の代わりに) フィールド自体の名前を使用して一致を試みます。
私に何ができる?