CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

怎么才能一组一组循环显示?

楼主a2048(你好吗)2006-03-14 11:29:30 在 Java / Web 开发 提问

........  
  String   sql   =   "";  
  String   a   =   "";  
  int   i=0;  
  sql="select   a,b   from   ab   where   id='0'   order   by   b";  
  rs   =   stmt.executeQuery(   sql   );  
  %>  
  <table   border="1"   cellspacing="0"   width="161"   height="20">  
  <tr>  
  <%  
  while(rs.next()){  
  a=rs.getString("a").trim();  
  b=rs.getString("b").trim();    
  if(i   %   3   ==   0){  
  %>  
  <br/><br/>  
    <p   align="left"><b><font   size="2">&nbsp;&nbsp;   </font><font   size="4">组号   <%=b%></font></b></p>  
   
  <%}  
  i++;   %>  
  <table   border="1"   cellspacing="0"   width="161"   height="20">  
  <tr>    
  <td   height="20"   colspan="2"   align="center"><font   size="2">   <%=a%>   </font></td>  
  </tr>  
  </table>  
  <%}   %>  
  .........  
  我的数据库的数据是:  
  字段           id           a                   b  
                            0         钢笔         023  
                            0         铅笔         023  
                            0         圆珠笔     023  
                            0         圆珠笔     023  
                            0         钢笔         056  
                            0         铅笔         056  
                            0         圆珠笔     087  
                            0         圆珠笔     087    
  字段a是货物名称,b是组号  
  以上代码已经实现功能如下:  
   
  组号   023  
  钢笔  
  铅笔    
  圆珠笔    
   
   
  组号   023  
   
  圆珠笔    
  钢笔  
  铅笔    
   
   
  组号   087  
   
  圆珠笔    
  圆珠笔    
   
  现在怎样才能一组一组循环显示?  
  象下面的效果:  
  组号   023  
  钢笔  
  铅笔    
  圆珠笔    
  圆珠笔  
   
   
  组号   056  
   
  钢笔  
  铅笔    
   
   
   
  组号   087  
   
  圆珠笔    
  圆珠笔    
   
  问题点数:100、回复次数:10Top

1 楼tomuno(特别行动组)回复于 2006-03-14 11:39:49 得分 0

每个rs.next()下是一个<tr>  
  每个属性是一个<td>Top

2 楼yxxx(_小孬)回复于 2006-03-14 11:42:24 得分 20

String   t   =   "";  
  while(rs.next())  
  {  
  a=rs.getString("a").trim();  
  b=rs.getString("b").trim();    
  if(!t.equals(b))  
  {...}  
  t   =   b;  
  }  
   
  试试Top

3 楼a2048(你好吗)回复于 2006-03-14 13:52:16 得分 0

我看不明白你们写的,能详细些吗?Top

4 楼yxxx(_小孬)回复于 2006-03-14 14:04:09 得分 30

<%  
  while(rs.next()){  
  a=rs.getString("a").trim();  
  b=rs.getString("b").trim();    
  if(i   %   3   ==   0){  
  %>  
  <br/><br/>  
    <p   align="left"><b><font   size="2">&nbsp;&nbsp;   </font><font   size="4">组号   <%=b%></font></b></p>  
   
  <%}  
  i++;   %>  
   
  替换为====>>>  
   
  <%  
  String   t   =   "";  
  while(rs.next())  
  {  
  a=rs.getString("a").trim();  
  b=rs.getString("b").trim();    
  if(!t.equals(b)){  
  %>  
  <br/><br/>  
    <p   align="left"><b><font   size="2">&nbsp;&nbsp;   </font><font   size="4">组号   <%=b%></font></b></p>  
   
  <%  
  t   =   b;  
  }%>  
  Top

5 楼a2048(你好吗)回复于 2006-03-14 15:51:11 得分 0

yxxx(小孬)谢谢您了。  
  我还想问个问题。答对再加50分。  
  怎么来控制每组循环显示在10行的距离里,也就是每组循环显示在规定的范围里。  
  的效果:  
  组号   023  
  钢笔  
  铅笔    
  圆珠笔    
  圆珠笔  
   
   
   
   
   
   
  组号   056  
  钢笔  
  铅笔    
   
   
   
   
   
   
   
   
  组号   087  
  圆珠笔    
  圆珠笔    
  Top

6 楼yxxx(_小孬)回复于 2006-03-14 16:26:26 得分 40

<%  
  int   i   =   0;  
  String   t   =   "";  
  while(rs.next())  
  {  
  a=rs.getString("a").trim();  
  b=rs.getString("b").trim();    
  if(!t.equals(b)){  
  for(int   j=0;j<10-i;j++)  
      out.println("<br>");  
  %>  
  <br/><br/>  
    <p   align="left"><b><font   size="2">&nbsp;&nbsp;   </font><font   size="4">组号   <%=b%></font></b></p>  
   
  <%  
  t   =   b;}  
  i++;  
  %>  
   
  试试看Top

7 楼a2048(你好吗)回复于 2006-03-14 17:40:39 得分 0

yxxx(小孬)非常谢谢您回答。  
  符合我的要求,但有个小问题在循环出来后第一组上面也空10行了,变成:  
   
   
   
   
   
   
   
   
   
  组号   023  
  钢笔  
  铅笔    
  圆珠笔    
  圆珠笔  
   
  ........  
   
  有什么办法第一组不要空10行直接象这样:  
  组号   023  
  钢笔  
  铅笔    
  圆珠笔    
  圆珠笔  
  Top

8 楼a2048(你好吗)回复于 2006-03-15 13:41:13 得分 0

yxxx(小孬)能帮我再看看吗?谢谢!Top

9 楼northwolf_sky(似水微蓝)回复于 2006-03-15 18:52:40 得分 0

判断一下Top

10 楼yxxx(_小孬)回复于 2006-03-16 13:00:29 得分 10

<%  
  int   i   =   0;  
  String   t   =   "";  
  boolean   start   =   false;  
  while(rs.next())  
  {  
  a=rs.getString("a").trim();  
  b=rs.getString("b").trim();    
  if(!t.equals(b)){  
  if(start)  
  for(int   j=0;j<10-i;j++)  
      out.println("<br/>");  
  %>  
  <br/><br/>  
    <p   align="left"><b><font   size="2">&nbsp;&nbsp;   </font><font   size="4">组号   <%=b%></font></b></p>  
   
  <%  
  t   =   b;  
  start   =   true;}  
  i++;  
  %>  
   
  加个判断就行了Top

相关问题

  • 循环中画的点怎样才能画一个显示一个,而不是一下子显示出来?
  • 如何才能与ADO组件连上来显示数据?
  • 循环显示图片
  • 在一个组件内,怎么才能实现既能显示文字,也可以显示图片的功能?
  • 怎么才能再输入一个text框得时候使另外一个text框也能同步显示这个值呢(循环的怎么表示呢)
  • smarty 中数组循环嵌套调不是报错就是不显示
  • 请问如果才能将控件做成数组,然后用循环对每一个控件进行操作???
  • 怎么才能做到在一个页面里循环给另一个页面的文本框组赋值?
  • CEdit怎么才能显示多行?
  • 图象怎样才能快速显示

关键词

  • sql
  • 圆珠笔
  • 钢笔铅笔
  • 组号
  • yxxx
  • 显示
  • 谢谢
  • rs
  • 小孬

得分解答快速导航

  • 帖主:a2048
  • yxxx
  • yxxx
  • yxxx
  • yxxx

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo