【发布时间】:2018-09-08 16:24:05
【问题描述】:
XSL 转换有问题。我将使用 xml 文件发送包含标题的文档,因此,我需要在另一个文件中使用 for-each 来创建具有任何级别标题的章节列表,但它不起作用。感谢您的帮助。
XML
<Chapters>
<Chapter>
<Heading1Lvl>
<Heading1LvlName>heading1nameFirst</Heading1LvlName>
<Heading2Lvl>
<Heading2LvlName>heading2name</Heading2LvlName>
<Text typeOfText="basic">BasicText</Text>
<Text typeOfText="important">Important</Text>
<Text typeOfText="link">Link</Text>
</Heading2Lvl>
</Heading1Lvl>
</Chapter>
<Chapter>
<Heading1Lvl>
<Heding1LvlName>heading1nameSecond</Heding1LvlName>
<Heading2Lvl>
<Heading2LvlName>heading2nameSecond</Heading2LvlName>
<Heading3Lvl>
<Heading3LvlName>Heading3First</Heading3LvlName>
<Text typeOfText="basic">BasicText1</Text>
<Text typeOfText="important">Important1</Text>
<Text typeOfText="link">Link1</Text>
</Heading3Lvl>
<Heading3Lvl>
<Heading3LvlName>Heading3second</Heading3LvlName>
<Text typeOfText="basic">BasicText2</Text>
<Text typeOfText="important">Important2</Text>
<Text typeOfText="link">Link2</Text>
</Heading3Lvl>
<Heading3Lvl>
<Heading3LvlName>Heading3third</Heading3LvlName>
<Text typeOfText="basic">BasicText3</Text>
<Text typeOfText="important">Important3</Text>
<Text typeOfText="link">Link3</Text>
</Heading3Lvl>
<Text typeOfText="basic">BasicText</Text>
<Text typeOfText="important">Important</Text>
<Text typeOfText="link">Link</Text>
</Heading2Lvl>
</Heading1Lvl>
</Chapter>
</Chapters>
XSL
<xsl:template match="Chapters">
<div style="padding-top:10%">
<xsl:for-each select="Chapter/Heading1Lvl">
<xsl:value-of select="Heading1LvlName"/>
<xsl:for-each select="Heading1Lvl/Heading2Lvl">
<xsl:value-of select="Heading1LvlName"/>
<xsl:for-each select="Heading2/Heading3Lvl">
<xsl:value-of select="Heading3LvlName"/>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
</div>
【问题讨论】:
标签: xml xslt transformation