while(rs.next())
  {
out.print("<form name=f1>");
out.print("<tr>");
out.print("<td>"+rs.getString(1)+"</td>");
out.print("<td>"+rs.getString(2)+"</td>");
out.print("<td>"+rs.getString(3)+"</td>");
out.print("<td>"+rs.getString(4)+"</td>");
out.print("<td>"+rs.getString(5)+"</td>");
out.print("<td>"+rs.getString(6)+"</td>");
out.print("<td>"+rs.getString(7)+"</td>");
out.print("<td>"+"<button name=bt value="+rs.getString(1)+"  onclick=btdel()>删除它</button>"+"</td>");
out.print("</tr>");
out.print("</form>");
  }out.print("<td>"+"<button name=bt value="+rs.getString(1)+"  onclick=btdel()>删除它</button>"+"</td>");
这句,给value赋值,不应该是滚动的么?循环到哪一条,就是哪个。
比如  
1   2   2   2这样第一次赋值value=1,第二次不就是该value=2了么?  怎么一直是1?

解决方案 »

  1.   

    貌似在同一次循环里面不能rs.getString(1)两次,忘记了。。这些小问题最好自己动手测试多几次。。这样能加深理解和锻炼自己的解决问题的能力。。稍有不懂就问人很没面子的。。
      

  2.   


    有时确实是这样,两次rs.getString(1)出问题在以前我也遇到过,是在sqlserver 2000的时候
      

  3.   

    你把 rs.getString(1)赋值给一个String变量吧,下面再使用该变量
      

  4.   

    楼上正解
    rs.getXXX(1)的都只能读取一次
      

  5.   

    恩。 String s=rs.getString(1);
    out.print("<td>"+"<button onclick=btdel() value="+s+" name=bt1>删除它</button>"+"</td>");
    所有行的按钮的value全是一个数,就是第一行第一列的数第二次循环时不是应该变了吗?怎么不变啊