xslt 对我来说很新。是否可以做类似于我下面的代码的事情。我知道在其他模板语言中是可能的。
<div class="<xsl:if test="position()=1">myclass</xsl:if>">Hello</div>
xslt 对我来说很新。是否可以做类似于我下面的代码的事情。我知道在其他模板语言中是可能的。
<div class="<xsl:if test="position()=1">myclass</xsl:if>">Hello</div>
你可以把一个包裹xsl:attribute
在一个xsl:if
...
<div>
<xsl:if test="position()=1">
<xsl:attribute name="class">myclass</xsl:attribute>
</xsl:if>
<xsl:text>Hello</xsl:text>
</div>
此外,在 XSLT 2.0 中,您可以这样编写xsl:attribute
:
<xsl:attribute name="class" select="'myClass'"/>
另一个 XSLT 2.0 选项,如果您不介意使用 empty class=""
,则if
在 AVT(属性值模板)中使用 an:
<div class="{if (position()=1) then . else ''}">...</div>
then
可能因上下文而异。
它应该是这样的:
<xsl:variable name="myclass" select="variablenode" />
<div class="adf">
<xsl:if test="yournode[position()=1]">
<xsl:value-of select="$myclass"/>
</xsl:if>
Hello</div>
但请给我们您的源 XML、您目前拥有的 XSLT 以及预期的输出。否则我们只能猜测。