2011-04-28 67 views
0

下面的代码是如何在表格中显示/拆分2行。 但是,我怎样才能让它显示/分割成4行,而不是两个?在循环中的表格中显示/拆分4行

dim bCloseRow 
bCloseRow = True 
Do while not objTrucks.eof 
If bCloseRow Then response.write "<tr>" 
bCloseRow = Not bCloseRow 
response.write "<td><input type=checkbox name=dno value=" & objTrucks("TRUCK_NO") & objTrucks("TRUCK_NO") & ">" & objTrucks("TRUCK_NO") & "</td>" 
If bCloseRow Then response.write "</tr>" 
objTrucks.movenext 
loop 

感谢您的任何帮助。

回答

3

如果有更多的行那么你必须做出一个更连续的记录四强。如果少于四个,你必须插入一些空的td标签。

希望这有助于

const iCols=4 
    dim iCount:iCount=0 
    if not objTrucks.eof then 
     response.write "<table>" 
     Do while not objTrucks.eof 
      if iCount=0 then response.write "<tr>" 
      response.write "<td><input type=checkbox name=dno value=" & objTrucks("TRUCK_NO") & objTrucks("TRUCK_NO") & ">" & objTrucks("TRUCK_NO") & "</td>" 
      objTrucks.movenext 
      iCount = iCount + 1 
      if iCount=iCols then 
       response.write "</tr>" 
       iCount=0 
      end if 
     loop 
     if iCount>0 then 
      for i = iCount to iCols-1 
       response.write "<td></td>" 
      next 
      response.write "</tr>" 
     end if 
     response.write "</table>" 
    end if 
1

我会使用,而不是一个布尔标志计数器做到这一点:

Const numCols = 4 
Dim counter 
counter = 0 

Do While Not objTrucks.EOF 
    If counter Mod numCols = 0 Then 
     Response.Write "<tr>" 
    End If 

    counter = counter + 1 

    Response.Write "<td><input type=checkbox name=dno value=" & objTrucks("TRUCK_NO") & objTrucks("TRUCK_NO") & ">" & objTrucks("TRUCK_NO") & "</td>" 

    If counter Mod numCols = 0 Then 
     Response.Write "</tr>" 
    End If 

    objTrucks.MoveNext 
Loop 
+0

哇,这是伟大的!非常感谢!! :-) – compcobalt 2011-04-28 14:20:32