再问一个xsl中循环取数据的问题

如果数据是象下面这样描述图片信息的

 1<root>
 2<pic>
 3<filename>1.jpg</filename>
 4<size>120</size>
 5<link/>1.htm<link/>
 6</pic>
 7<pic>
 8<filename>2.jpg</filename>
 9<size>120</size>
10<link/>2.htm<link/>
11</pic>
12<pic>
13<filename>3.jpg</filename>
14<size>120</size>
15<link/>3.htm<link/>
16</pic>
17<pic>
18<filename>4.jpg</filename>
19<size>120</size>
20<link/>4.htm<link/>
21</pic>   
22  
23....一直到...   
24  
25<pic>
26<filename>n.jpg</filename>
27<size>120</size>
28<link/>n.htm<link/>
29</pic>
30</root>

怎么样才能做一个表格效果,实现每取4组图片数据换让图片显示换一次行呢?如下效果,每一数字代表一幅图

1 2 3 4
5 6 7 8
.....
n n+1 n+2 n+3

另外顺便问一句

1<xsl:value-of select="."></xsl:value-of>

中的.是用来做什么的,谢谢
---------------------------------------------------------------

 1<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 2<xsl:output indent="yes" method="html"></xsl:output>
 3<xsl:template match="/">
 4<table>
 5<xsl:apply-templates select="/root/pic"></xsl:apply-templates>
 6</table>
 7</xsl:template>
 8<xsl:template match="pic[position() mod 4 = 1]">
 9<tr>
10<td>
11<xsl:value-of select="filename"></xsl:value-of>
12</td>
13<td>
14<xsl:value-of select="following-sibling::pic[1]/filename"></xsl:value-of>
15</td>
16<td>
17<xsl:value-of select="following-sibling::pic[2]/filename"></xsl:value-of>
18</td>
19<td>
20<xsl:value-of select="following-sibling::pic[3]/filename"></xsl:value-of>
21</td>
22</tr>
23</xsl:template>
24<xsl:template match="pic"></xsl:template>
25</xsl:stylesheet>

---------------------------------------------------------------

三行的只要修改这一块。

 1<xsl:template match="pic[position() mod 3 = 1]">
 2<tr>
 3<td>
 4<img src="{filename}"/>
 5</td>
 6<td>
 7<img src="{following-sibling::pic[1]/filename}"/>
 8</td>
 9<td>
10<img src="{following-sibling::pic[2]/filename}"/>
11</td>
12</tr>
13</xsl:template>

---------------------------------------------------------------

那么你就多谢几句,每个都类似:

 1<td>
 2<xsl:choose>
 3<xsl:when test="following-sibling::pic[2]">
 4<a href="{following-sibling::pic[2]/link}">
 5<img border="0" src="{following-sibling::pic[2]/filename}"/>
 6</a>
 7</xsl:when>
 8<xsl:otherwise>
 9<img src="chacha.gif"/>
10</xsl:otherwise>
11</xsl:choose>
12</td>
Published At
Categories with Web编程
comments powered by Disqus