我无法通过xml / xsl转换呈现项目符号列表。我希望输出是带有圆形项目符号的列表。
这是xml文件 -
<bulletList name="list">
<item>• Item1</item>
<item>• Item2</item>
<item>• Item3</item>
<item>• Item4</item>
<item>• Item5</item>
</bulletList>
这里是相应的XSL -
<div class="sansIcon">
<xsl:apply-templates select="content[@name='con1']" mode="impl_expandContent"/>
<ul>
<xsl:apply-templates select="bulletList[@name='list']" mode="impl_expandContent">
<xsl:for-each select="item">
<li><xsl:value-of /></li>
</xsl:for-each>
</xsl:apply-templates>
</ul>
</div>
请帮忙!提前谢谢。
答案 0 :(得分:0)
此处将<xsl:value-of />
更改为<xsl:value-of select="text()"/>
这样做,而不是使用bulletList
的apply-templates<ul>
<xsl:for-each select="bulletList[@name='list']/item">
<li>
<xsl:value-of select="text()"/>
</li>
</xsl:for-each>
</ul>
对于这种类型的XML,
<item>Item1 - Description1</item>
<item>Item2 - Description2</item>
使Item1,Item2,....变为粗体。使用substring-before()
和substring-after()
<li>
<xsl:variable name="itemText" select="substring-before(text(), '-')"/>
<b><xsl:value-of select="$itemText"/></b><xsl:value-of select="substring-after(text(), $itemText)"/>
</li>