繁体   English   中英

打破经典的ASP页面

[英]Break in classic ASP page

我正在开发一个从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

您应该能够将该样式应用于表格行。 从查看你的代码我假设你想要每行显示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
    %>

这个小提琴显示了代码的实际效果。 打印此页面以查看分页符。

然而

最优雅的方法是使用CSS3第n个子选择器 缺点是缺乏旧浏览器和IE浏览器的支持。

你会使用类似的东西:

tr:nth-child(3n +4) {page-break-before:always;}
/*3n says select every third row with + 4 being the row to start from*/

看到这个小提琴和打印预览这一个

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM