2011-02-25 48 views
1

列表我如何划分节点列表分为三段,并把它们分成3列XSLT划分节点的三分之二

+0

你能证明你的输入和你期望的输出?这可能会成为hsndy:http://www.dpawson.co.uk/xsl/sect2/sect21.html – rene 2011-02-25 21:22:03

+0

第一个重复发现[for-each:获取每个第三个项目(分成3列)](http:// stackoverflow .com/questions/3400074/for-each-get-every-3rd-item-split-into-3-columns) – 2011-02-25 21:25:08

+0

Dimitre之一:http://stackoverflow.com/questions/2461866/xsl-list-divided-进入列 – 2011-02-25 21:27:20

回答

-3

你需要SMT这样的:

<table><tr> 
<xsl:for-each select="nodesPath"> 
    <xsl:if test='((position()-1) mod 3)=0'> 
     <xsl:text disable-output-escaping="yes"><![CDATA[</tr><tr>]]></xsl:text> 
    </xsl:if> 
    <td>content</td> 
</xsl:for-each> 
</tr></table> 
+1

可怕的非解决方案。禁用输出转义不需要实现这一点,它只适用于XSLT转换的输出被序列化的情况 - 这意味着如果结果树被用作另一个转换的输入或直接被渲染就像Firefox中的情况一样。没有禁用输出转义就有几个问题无法解决。这不是其中之一。 – 2011-02-26 08:59:51

+0

-1。我同意。可怕的一个。 – Flack 2011-02-26 09:35:54

+0

好的,谢谢你们,我不是在解决所有问题读者的错误 – Danil 2011-02-26 12:52:58