代码怎么实现每行显示5条,5条到了就换行的?我怎么看这些语句好像只能输出一个<tr> 它第二行的<tr>怎么来

response.write"<tr>"
for i=1 to 10
if rs.eof then exit for
jingName=Left(rs("jingName"),10)
response.write "<td width='20%' align=center style='line-height:25px;'><a href='jing_show_"&rs("ID")&".html' title='"&jingName&"'><img src='"&rs("BigPic")&"' border='0'width='110' height='80' alt='"&jingName&"'></a><br>"
Response.write "<a href='jing_show_"&rs("ID")&".html' title='"&jingName&"'>"&jingName&"</a></td>"
if i mod 5 = 0 then
Response.write"</tr>"
end if
rs.movenext
next
是这样的,这段代码在我的程序里是能够正常运行的,而且显示也能显示2行,我就是不明白为什么第二个<tr>会出来,因为是table布局,前台查看源代码,通过这端程序还能有Tbody这个标签产生。。。。。。
还有1楼的 你的应该不行,想想看第一次运行到5 生成1行 再多了个<tr>那 到10呢? 结尾岂不多了个</tr>? 我是这么改的在5 和 10处 都加代码 5处加<tr> 10处就只有</tr>

就是想不通这个for循环怎么会产生第二行的<tr>?? 继续求解

response.write"<tr>"
i = 1
Do While Not rs.Eof
jingName=Left(rs("jingName"),10)
response.write "<td width='20%' align=center style='line-height:25px;'><a href='jing_show_"&rs("ID")&".html' title='"&jingName&"'><img src='"&rs("BigPic")&"' border='0'width='110' height='80' alt='"&jingName&"'></a><br>"
Response.write "<a href='jing_show_"&rs("ID")&".html' title='"&jingName&"'>"&jingName&"</a></td>"
if i mod 5 = 0 then Response.write"</tr><tr>"
i = i + 1
rs. Movenext
Loop
response.write"</tr>"

这样写就可以了。刚才疏忽了。
刚发现,你的循环写法也不是很理想。
建议你换成这样的写法。
看看效果,我调试不了ASP程序。你就弄弄看。
有问题,你可以继续问。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-12
要注意for循环判断的位置,在tr前用for循环,不用在tr里面td外面,几tr和td之间用for循环判断
相似回答