网络编程 
首页 > 网络编程 > 浏览文章

分页代码

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )
 

分页代码:
<%''本程序文件名为:Pages.asp%>
<%''包含ADO常量表文件adovbs.inc,可从"\Program Files\Common Files\System\ADO"目录下拷贝%>
<!--#Include File="adovbs.inc"-->
<%''*建立数据库连接,这里是Oracle8.05数据库
 Set conn=Server.CreateObject("ADODB.Connection") 
 conn.Open "Provider=msdaora.1;Data Source=YourSrcName;User ID=YourUserID;Password=YourPassword;" 

 Set rs=Server.CreateObject("ADODB.Recordset")  ''创建Recordset对象
 rs.CursorLocation=adUseClient          ''设定记录集指针属性
 ''*设定一页内的记录总数,可根据需要进行调整 
 rs.PageSize=10                   
 
 ''*设置查询语句   
 StrSQL="Select ID,姓名,住址,电话 from 通讯录 Order By ID"    
 rs.Open StrSQL,conn,adOpenStatic,adLockReadOnly,adCmdText
%>
<HTML>
<HEAD>
<title>分页示例</title>
<script language=javascript>
 //点击"[第一页]"时响应:
 function PageFirst()
 { 
  document.MyForm.CurrentPage.selectedIndex=0;
  document.MyForm.CurrentPage.onchange();
 }
 //点击"[上一页]"时响应:
 function PagePrior()
 {  
  document.MyForm.CurrentPage.selectedIndex--;
  document.MyForm.CurrentPage.onchange();
 }
 //点击"[下一页]"时响应:
 function PageNext()
 { 
  document.MyForm.CurrentPage.selectedIndex++;
  document.MyForm.CurrentPage.onchange();     
 }
 //点击"[最后一页]"时响应:
 function PageLast()
 { 
  document.MyForm.CurrentPage.selectedIndex=document.MyForm.CurrentPage.length-1;
  document.MyForm.CurrentPage.onchange();
 }
 //选择"第?页"时响应:
 function PageCurrent()
 { //Pages.asp是本程序的文件名
  document.MyForm.action='Pages.asp?Page='+(document.MyForm.CurrentPage.selectedIndex+1)
  document.MyForm.submit();
 } 
</Script>
</HEAD>
<BODY bgcolor="#ffffcc" link="#008000" vlink="#008000" alink="#FF0000"">
 
<%IF rs.Eof THEN
  Response.Write("<font size=2 color=#000080>[数据库中没有记录!]</font>")
 ELSE 
  ''指定当前页码
  If Request("CurrentPage")="" Then
   rs.AbsolutePage=1
  Else
   rs.AbsolutePage=CLng(Request("CurrentPage"))
  End If 
  
  ''创建表单MyForm,方法为Get
  Response.Write("<form method=Get name=MyForm>") 
  Response.Write("<p align=center><font size=2 color=#008000>")
  ''设置翻页超链接
  if rs.PageCount=1 then 
   Response.Write("[第一页] [上一页] [下一页] [最后一页] ")
  else 
    if rs.AbsolutePage=1 then
     Response.Write("[第一页] [上一页] ")
     Response.Write("[<a href=javascript:PageNext()>下一页</a>] ") 
     Response.Write("[<a href=javascript:PageLast()>最后一页</a>] ") 
    else 
      if rs.AbsolutePage=rs.PageCount then
       Response.Write("[<a href=javascript:PageFirst()>第一页</a>] ") 
       Response.Write("[<a href=javascript:PagePrior()>上一页</a>] ") 
       Response.Write("[下一页] [最后一页] ")
      else
        Response.Write("[<a href=javascript:PageFirst()>第一页</a>] ") 
        Response.Write("[<a href=javascript:PagePrior()>上一页</a>] ") 
        Response.Write("[<a href=javascript:PageNext()>下一页</a>] ") 
        Response.Write("[<a href=javascript:PageLast()>最后一页</a>] ") 
      end if
    end if
  end if
  
  ''创建下拉列表框,用于选择浏览页码
  Response.Write("第<select size=1 name=CurrentPage onchange=PageCurrent()>")  
  For i=1 to rs.PageCount 
   if rs.AbsolutePage=i then
    Response.Write("<option selected>"&i&"</option>") ''当前页码
   else
    Response.Write("<option>"&i&"</option>")
   end if 
  Next 
  Response.Write("</select>页/共"&rs.PageCount&"页 共"&rs.RecordCount&"条记录</font><p>") 
  Response.Write("</form>")
  
  ''创建表格,用于显示
  Response.Write("<table align=center cellspacing=1 cellpadding=1 border=1")  
  Response.Write(" bordercolor=#99CCFF bordercolordark=#b0e0e6 bordercolorlight=#000066>")
  
  Response.Write("<tr bgcolor=#ccccff bordercolor=#000066>") 
   
  Set Columns=rs.Fields 
  
  ''显示表头
  For i=0 to Columns.Count-1
   Response.Write("<td align=center width=200 height=13>")
   Response.Write("<font size=2><b>"&Columns(i).name&"</b></font></td>") 
  Next
  Response.Write("</tr>")
  ''显示内容
  For i=1 to rs.PageSize 
   Response.Write("<tr bgcolor=#99ccff bordercolor=#000066>") 
   For j=0 to Columns.Count-1 
    Response.Write("<td><font size=2>"&Columns(j)&"</font></td>") 
   Next
   Response.Write("</tr>")
   
   rs.movenext 
   if rs.EOF then exit for 
  Next
  
  Response.Write("</table>") 

 END IF
%>
</BODY>
</HTML>
上一篇:如何在数据库中用好Transaction?
下一篇:记录集内随机取记录的代码
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。