ASP中实现分页显示的七种方法(6)
为保证首次进入该页时,显示的是第一页,我们还得编写该网页对象的onEnter事件。
Function empList_onEnter() If empList.firstEntered Then empList.setCurrentPageNumber(1) End If End Function 第五步:编写显示每一页的脚本。 <HR><TABLE BORDER=0><TR>//显示表头 <TH ALIGN="left" WIDTH=35></TH> <TH ALIGN="left" WIDTH=150>Emp ID</TH> <TH ALIGN="left" WIDTH=200>Last Name</TH> <TH ALIGN="left" WIDTH=200>First Name</TH></TR> <% pageNumber = empList.getCurrentPageNumber()//计算翻页所需的各种参数,同DHTML法二 recordsPerPage = empList.getRecordsPerPage() startRecord = ((pageNumber - 1) * recordsPerPage) + 1 lastRecord = Recordset1.getCount() For recordPtr = startRecord To (startRecord + recordsPerPage - 1)%> <%If Recordset1.EOF = True Then%> <TR> <TD> </TD> <TD> </TD> <TD> </TD> <TD> </TD> </TR> <%Else%> <%Recordset1.moveAbsolute(recordPtr)%> <TR> <% If recordPtr <= lastRecord Then %> <TD><%=recordptr%></TD> <%Else%> <TD> </TD> <% End If %> <TD><%=Recordset1.fields.getValue("emp ID")%></TD> <TD><%=Recordset1.fields.getValue("last name")%></TD> <TD><%=Recordset1.fields.getValue("first name")%></TD> </TR> <%End If%> <%Next%> </TABLE><HR>
第七种:Data Environment Object Model(数据环境对象模型)法
Data Environment对象模型把ADO对象模型及它的对象----“Connection”,“Command”,“Recordset”,“Field”以及“Parameter”对象----抽象到一个更加容易的表单中。Data Environment Object Model把命令显露为方法。用户可以调用这些方法,这些方法会执行这些命令并返回所得到的记录集。关于DEOM对象模型详细资料请参考相关书籍。我们来看下面网页emp7.asp的例子:
第一步:在VI6.0的“project Explorer”窗口中的工程项目上右击鼠标并从弹出式菜单选择“Add Data Connection”。根据VI给出的导航提示建立一个到数据库的连接之后,用户就添加了一个实现从ASP应用程序访问数据库的数据命令。同时,你将会在“Project Explorer”窗口中的global.asa文件下方看到一个“Data Environment”对象。
第二步:右击“Data Environment”对象然后从弹出式菜单中选择“Add Data Command”选项,添加一个数据命令Command1。根据VI6.0的导航提示,你可以在Command1 Properties弹出窗口的Genetal页中选SQL Statement,输入:select * from emp。按OK返回。
第三步:你创建了这个数据命令后,就已经为该Data Environment对象创建了一个方法,然后就可以从脚本中调用这个方法,而且该方法将会给用户返回一个记录集。
thisPage.createDE() //在SOM模式下,thisPage表示当前网页对象,createDE()方法创建了DE对象。