我正在开发一个从SQL数据库获取数据的网页。我想要打破记录,以便当它到达第三行时,它将分解到另一页。 我有一个javacript,以便它打破页面。但是,此记录显示在表格中。而且我不知道如何放入代码中。有什么建议吗? 感谢。
<style>div.break {page-break-before:always}</style>
Sub DisplayRecords()
Do until registerRS.eof
counter=counter+1
if counter=41 then
counter=0
counter=counter+1
end if
r = r + 1
If r = 1 then
Response.write "<tr>"
End if
%>
<td>
<%=registerRS.Fields("SchoolId")%> <br />
Class: <%=registerRS.Fields("class")%><br />
</td>
<%
If r = 2 then
Response.write "</tr>"
End if
If r = 3 then r = 1
registerRS.movenext
loop
registerRS.close
set registerRS=nothing
End sub
答案 0 :(得分:2)
您应该能够将该样式应用于表格行。从查看你的代码我假设你想要每行显示3条记录,每三行都有一个分页符。如果是这样,您可以执行以下操作:
<强> CSS 强>
tr.break {page-break-before:always;}
<强> ASP 强>
Sub DisplayRecords()
rowCount = 0
Do until registerRS.eof
counter=counter+1
if counter=41 then
counter=0
counter=counter+1
end if
r = r + 1
If r = 1 then
if rowCount < 3 then
Response.write "<tr>"
rowCount = rowCount + 1
else
Response.write "<tr class='break'>"
rowCount = 0
End if
%>
<td>
<%=registerRS.Fields("SchoolId")%> <br />
Class: <%=registerRS.Fields("class")%><br />
</td>
<%
If r = 2 then
Response.write "</tr>"
End if
If r = 3 then r = 1
registerRS.movenext
loop
registerRS.close
set registerRS=nothing
End sub
%>
This fiddle显示了正在运行的代码。打印this page以查看分页符。
<强>然而强>
最优雅的方法是使用CSS3 nth Child Selector。缺点是缺乏旧浏览器和IE浏览器的支持。
你会使用类似的东西:
tr:nth-child(3n +4) {page-break-before:always;}
/*3n says select every third row with + 4 being the row to start from*/
查看this fiddle并打印预览this one