将ASP记录集输出成n列的表格形式显示的方法

ASP教程 2025-08-15

asp 表格形式显示数据,方便多行多列内容的输出。'定义变量
Dim cn,rs,Sql
Sql = "select CustomerID from Orders"
'记录总数
Dim TotalNumbe
Set cn = Server.CreateObject("ADODB.Connection")
cn.Open "Provider=SQLOLEDB.1;User ID=sa;Initial Catalog=NorthWind;Data Source=.;Password=;"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open Sql, cn, 3, 1
TotalNumber = rs.RecordCount
If TotalNumber = 0 Then
Response.Write "没有记录输出。"
Else
Dim jj,nLeft,cCol
jj = 0
nCol = 415
nLeft = nCol- (TotalNumber Mod nCol)
If nLeft = nCol Then nLeft = 0
Response.Write "< table border >< tr >" & vbCrLf
While not rs.EOF
Response.Write "< td >" & rs("CustomerID") & "< /td >" & vbCrLf
'If (jj Mod nCol) = (nCol - 1) And jj <  > TotalNumber - 1 Then Response.Write "< /tr >< tr >" & vbCrLf
'If (jj Mod nCol) = (nCol - 1) And jj = TotalNumber-1 Then Response.Write "< /tr >" & vbCrLf
If (jj Mod nCol) = (nCol - 1) Then
If jj <  > TotalNumber - 1 Then
Response.Write "< /tr >< tr >" & vbCrLf
Else
Response.Write "< /tr >" & vbCrLf
End If
End If
jj = jj + 1
rs.MoveNext
Wend
If nLeft <  > 0 And nLeft <  > nCol Then
If nCol <  TotalNumber Then
For i = 1 to nLeft
Response.Write "< td > < /td >" & vbCrLf
Next
End If
Response.Write "< /tr >" & vbCrLf
End If
Response.Write "< /table >"
End If
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
Response.End