我是xml转换为html的新手。我有一个带有简单文件/文件夹结构的xml文件。
and
我希望有一个使用项目符号列表标签的html树。容器元素可以包含子容器和项目,item元素不能包含任何其他元素。也许以下的html代码段会对结果进行概述。
not
如何使用仅客户端xslt转换来获得结果?或者有更好的方法来实现目标吗?
迈克答案 0 :(得分:0)
以下解决方案不会输出确切的目标XML。这是一个有根据的猜测我想你想要的东西:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="text()" />
<xsl:template match="structure">
<ul>
<xsl:apply-templates />
</ul>
</xsl:template>
<xsl:template match="container|item">
<li>
<div class="{name()}">
<xsl:value-of select="name" />
</div>
<ul>
<xsl:apply-templates />
</ul>
</li>
</xsl:template>
</xsl:stylesheet>
输出为:
<?xml version="1.0"?>
<ul>
<li>
<div class="container">Container A</div>
<ul>
<li>
<div class="item">Item A</div>
<ul/>
</li>
<li>
<div class="container">Container A A</div>
<ul>
<li>
<div class="item">Item B</div>
<ul/>
</li>
<li>
<div class="item">Item A B</div>
<ul/>
</li>
</ul>
</li>
</ul>
</li>
<li>
<div class="container">Container B</div>
<ul>
<li>
<div class="item">Item C</div>
<ul/>
</li>
</ul>
</li>
<li>
<div class="item">Item X</div>
<ul/>
</li>
</ul>
这应该足以作为创建完全符合您期望的XSLT的起点。