XML:
<a>1</a>
<a>2</a>
<b>3</b>
<a>4</a>
<b>5</b>
期望的输出:
value a
value a
value b
value a
value b
XSLT:
<xsl:for-each select="a | b">
<xsl:if test="? = 'a'">
value a
</xsl:if>
<xsl:if test="? = 'b'">
value b
</xsl:if>
</xsl:for-each>
如何比较第<xsl:if test="? = 'a'">
行和<xsl:if test="? = 'b'">
中当前元素的值?
答案 0 :(得分:1)
你需要name()
,但这是一种奇怪的方式。根据您发布的内容,您只想输出节点的名称。在这种情况下:
<xsl:apply-templates select='a|b' />
<xsl:template match='a|b'>
value <xsl:value-of select='name()' />
</xsl:template>