0

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>

如何比较 line<xsl:if test="? = 'a'">和中当前元素的值<xsl:if test="? = 'b'">

4

1 回答 1

1

你需要name(),但这是一种奇怪的方式。根据您发布的内容,您只想输出节点的名称。在这种情况下:

<xsl:apply-templates select='a|b' />

<xsl:template match='a|b'>
    value <xsl:value-of select='name()' />
</xsl:template>
于 2013-09-03T15:31:52.360 回答