This example demonstrates the AbsolutePage, PageCount and PageSize properties. Cut and paste the following code to Notepad or another text editor, and save it as AbsolutePageJS.asp.
<!-- BeginAbsolutePageJS --> <%@LANGUAGE="JScript" %> <%// use this meta tag instead of adojavas.inc%> <!--METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" --> <html> <head> <title>AbsolutePage, PageSize, and PageSize Properties (JScript)</title> <style> <!-- BODY { font-family: 'Verdana','Arial','Helvetica',sans-serif; BACKGROUND-COLOR:white; COLOR:black; } .thead2 { background-color: #800000; font-family: 'Verdana','Arial','Helvetica',sans-serif; font-size: x-small; color: white; } .tbody { text-align: center; background-color: #f7efde; font-family: 'Verdana','Arial','Helvetica',sans-serif; font-size: x-small; } --> </style> </head> <body bgcolor="White"> <h1>AbsolutePage, PageSize, and PageSize Properties (JScript)</h1> <% // connection and recordset variables var Cnxn = Server.CreateObject("ADODB.Connection") var strCnxn = "Provider='sqloledb';Data Source=" + Request.ServerVariables("SERVER_NAME") + ";" + "Initial Catalog='Northwind';Integrated Security='SSPI';"; var rsEmployee = Server.CreateObject("ADODB.Recordset"); // display variables var strMessage, iRecord, iPageCount; try { // open connection Cnxn.Open(strCnxn); // Open a recordset on the Employee table using // a client-side cursor to enable AbsolutePage property. rsEmployee.CursorLocation = adUseClient; rsEmployee.Open("employees", strCnxn, adOpenStatic, adLockOptimistic, adCmdTable); // Set PageSize to five to display names and hire dates of five employees at a time rsEmployee.PageSize = 5; iPageCount = rsEmployee.PageCount; // Write header information to the document Response.Write('<p align="center">There are ' + iPageCount); Response.Write(" pages, each containing "); Response.Write(rsEmployee.PageSize + " or fewer records.</p>"); Response.Write('<table border="0" align="center">'); Response.Write('<tr class="thead2">'); Response.Write("<th>Page</th><th>Name</th><th>Hire Date</th></tr>"); for (var i=1; i<=iPageCount; i++) { rsEmployee.AbsolutePage = i; for (iRecord = 1; iRecord <= rsEmployee.PageSize; iRecord++) { strMessage = ""; // Start a new table row. strMessage = '<tr class="tbody">'; // First column in row contains page number on // first record of each page. Otherwise, the column // contains a non-breaking space. if (iRecord == 1) strMessage += "<td>Page " + i + " of " + rsEmployee.PageCount + "</td>" else strMessage += "<td> </td>"; // First and last name are in first column. strMessage += "<TD>" + rsEmployee.Fields("FirstName") + " "; strMessage += rsEmployee.Fields("LastName") + " " + "</td>"; // Hire date in second column. strMessage += "<td>" + rsEmployee.Fields("HireDate") + "</td>"; // End the row. strMessage += "</tr>"; // Write line to document. Response.Write(strMessage); // Get next record. rsEmployee.MoveNext; if (rsEmployee.EOF) break; } } // Finish writing table. Response.Write("</table>"); } catch (e) { Response.Write(e.message); } finally { // 'clean up if (rsEmployee.State == adStateOpen) rsEmployee.Close; if (Cnxn.State == adStateOpen) Cnxn.Close; rsEmployee = null; Cnxn = null; } %> </body> </html> <!-- EndAbsolutePageJS -->
AbsolutePage Property | PageCount Property | PageSize Property | Recordset Object