我有一个用于导入XML文件的xslt样式表。有一个循环就是连接一个名为“Note”的子节点。我试图让每个音符节点被一个新行分隔,但我无法弄清楚要输入的字符。在此先感谢您的帮助。这是我的代码:
XSLT
<xsl:if test="Note">
<xsl:call-template name="join">
<xsl:with-param name="list" select="Note" />
<xsl:with-param name="separator" select="';'" />
</xsl:call-template>
</xsl:if>
<xsl:template name="join">
<xsl:param name="list" />
<xsl:param name="separator"/>
<xsl:for-each select="$list">
<xsl:value-of select="." />
<xsl:if test="position() != last()">
<xsl:value-of select="$separator" />
</xsl:if>
</xsl:for-each>
</xsl:template>
XML节点:
<App action="A" id="65806">
<BaseVehicle id="6664"/>
<BodyType id="5"/>
<Note>Upgrade</Note>
<Note>replacement unit comes with a new dustcover / bumper assembly.</Note>
<Qty>2</Qty>
<PartType id="7584"/>
<Position id="30"/>
</App>
预期输出
目前...
Upgrade;replacement unit comes with a new dustcover / bumper assembly.
试图让它看起来像......
Upgrade
replacement unit comes with a new dustcover / bumper assembly.
答案 0 :(得分:1)
您仍然没有向我们展示我们可以按原样运行的XSLT。我想你想改变:
<xsl:with-param name="separator" select="';'" />
为:
<xsl:with-param name="separator" select="' '" />
或可能(对于Windows):
<xsl:with-param name="separator" select="' '" />