我想知道如何在xslt中找到特定节点的第一个子节点名称.
我有一个xml:
<name>
<body>
<para>
<text> some text</text>
</para>
</body>
</name>
Run Code Online (Sandbox Code Playgroud)
我可以使用body/node()[1]/local-name()获取名称吗?
<xsl:template match="name">
<name>
<xsl:variable name="firstchild" select="body/node()[1]/local-name()">
</xsl:variable>
<xsl:value-of select="$firstchild" />
</name>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)
输出应该是
<name>
para
</name>
Run Code Online (Sandbox Code Playgroud)
尝试这样的事......
<xsl:template match="name">
<name>
<xsl:variable name="firstchild" select="name(body/*[1])"/>
<xsl:value-of select="$firstchild" />
</name>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)
或者,如果您实际上不需要变量,只需简单...
<xsl:template match="name">
<name>
<xsl:value-of select="name(body/*[1])" />
</name>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)
这是第二个示例的xmlplayground ...以查看输出窗口中的<name>para</name>
单击View Source
.
归档时间: |
|
查看次数: |
11382 次 |
最近记录: |