我需要创建一个可以管理两个不同形式的XSLT,如下所示:
<form>
<requestor>rqu </requestor>
<pp1>pepe1<pp2>
</form>
<form>
<requestor>rqu </requestor>
<pp1>pepe1<pp1>
<pp2>pepe2<pp2>
</form>
想法是在所有节点之间循环并输出如下信息:
第一个例子
请求者 - &gt; rqu
pp1 - &gt; pepe1
第二个例子
请求者 - &gt; rqu
pp1 - &gt; pepe1
pp2 - &gt; pepe 2
这是一个简单的问题,但我不知道如何获取节点名称和循环节点,我正在搜索,我没有得到任何相关...
答案 0 :(得分:0)
这是一个简单的问题,但我不知道如何获取节点名称和 循环节点,我正在搜索,我没有得到任何相关...
使用name()
或local-name()
函数获取节点名称
使用xsl:for-each
或xsl:apply-templates
指令遍历节点。
答案 1 :(得分:0)
假设显示了一个非常简单的XML结构,你可以编写类似这样的内容来简单地遍历form
元素的子元素
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="text" />
<xsl:template match="form">
<xsl:for-each select="*">
<xsl:value-of select="local-name()" />
<xsl:text> -> </xsl:text>
<xsl:value-of select="." />
<xsl:text> </xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>