维滕贝格在苏格兰吗:asp循环显示问题

来源:百度文库 编辑:高校问答 时间:2024/04/20 08:27:05
我将数据库中的数据以一行两列来显示,但是当数据库中的数据为单数时就会出现问题,请问该怎么来改?谢谢,数据库的连接都没有问题!
代码如下:
<%
do while not rs.eof
%>
<tr>
<td><span class="style1"><img src="images/8.gif" width="18" height="18">
<a href="<%= rs("linkUrl")%>" target="_blank"><%= rs("linkName")%></a></span></td>
<%
rs.movenext
%>
<td width="207"><span class="style1"><img src="images/8.gif" width="18" height="18"> <a href="<%= rs("linkUrl")%>" target="_blank"><%= rs("linkName")%></a></span></td>
</tr>

<%
rs.movenext
loop
rs.close
set rs=nothing
%>

再修改下 刚才 少写了一句
<%
do while not rs.eof
%>
<tr>
<td><span class="style1"><img src="images/8.gif" width="18" height="18">
<a href="<%= rs("linkUrl")%>" target="_blank"><%= rs("linkName")%></a></span></td>
<%
rs.movenext
if rs.eof then
response.write "<td> </td></tr>"
else
%>
<td width="207"><span class="style1"><img src="images/8.gif" width="18" height="18"> <a href="<%= rs("linkUrl")%>" target="_blank"><%= rs("linkName")%></a></span></td>
</tr>
<%
end if
rs.movenext
loop
rs.close
set rs=nothing
%>

你一直写<td>,加一个变量i用来判断是否该换行了,该换行时加入<tr>就可以了,

<tr>
<%
i=0
do while not rs.eof
i=i+1
%>
<td><span class="style1"><img src="images/8.gif" width="18" height="18">
<a href="<%= rs("linkUrl")%>" target="_blank"><%= rs("linkName")%></a></span></td>
<% if (i mod 2 =0 ) then '当i为偶数时,也就是对2求余数为0,该换行了,写入tr
response.write("</tr><tr>")
end if
%>

<%
rs.movenext
loop
rs.close
set rs=nothing
%>
</tr>

关键是你的 rs.movenext
如果已经没有数据了,怎么 movenext 呢
所以,加个判断吧。

<%
do while not rs.eof
%>
<tr>
<td>
<span class="style1"><img src="images/8.gif" width="18" height="18">
<a href="<%= rs("linkUrl")%>" target="_blank"><%= rs("linkName")%></a></span>
</td>
<%
if rs.eof = false then
rs.movenext
%>
<td width="207">
<span class="style1"><img src="images/8.gif" width="18" height="18">
<a href="<%= rs("linkUrl")%>" target="_blank"><%= rs("linkName")%></a></span>
</td>
</tr>

<%
else
%>
<td> </td>
</tr>
<%
exit do
end if

rs.movenext
loop
rs.close
set rs=nothing
%>

这样 简单明了
<%
do while not rs.eof
%>
<tr>
<td><%= rs("id")%></td>
<td><%= rs("linkName")%></td>
</tr>
<%
rs.movenext
loop
rs.close
set rs=nothing
%>

给为空的字段定义一个默认值就行啦