这是我的 xml:
<OrdersSchedulePDFView>
<OrdersSchedulePDFViewRow>
<Locations>
<LocName>Text1</LocName>
<LocName>Text2</LocName>
</Locations>
</OrdersSchedulePDFViewRow>
</OrdersSchedulePDFView>
这是我的 xslt-fo 文件的片段:
<xsl:template match="OrdersSchedulePDFView">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:for-each select="./OrdersSchedulePDFViewRow">
<fo:page-sequence master-reference="all">
<fo:flow flow-name="xsl-region-body">
<xsl:for-each select="Locations">
<xsl:apply-templates select="."/>
</xsl:for-each>
</fo:flow>
</fo:page-sequence>
</xsl:for-each>
</fo:root>
</xsl:template>
<xsl:template match="Locations">
<fo:block text-align="left" font-family="Arial">
<fo:inline font-weight="bold"><xsl:value-of select="LocName"/></fo:inline>
</fo:block>
</xsl:template>
</xsl:stylesheet>
但在 PDF 中我只有一个 LocName。如何获取所有 LocName 元素?
最佳答案
根据您的更新:由于显然您没有为 Locations
元素添加代码,因此您可以通过更改来缩短代码:
<xsl:apply-templates select="Locations"/>
至:
<xsl:apply-templates select="Locations/LocName"/>
然后做:
<xsl:template match="LocName">
<fo:block text-align="left" font-family="Arial">
<fo:inline font-weight="bold">
<xsl:value-of select="."/>
</fo:inline>
</fo:block>
</xsl:template>
关于xml - XSLT-FO for 每个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43651405/