网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 天空资源网 >> 电脑技术 >> 编程技术 >> ASP >> 电脑技术正文
  面向对象的asp编程之七--分页对象(vbscript版)          【字体:
面向对象的asp编程之七--分页对象(vbscript版)
作者:网络    电脑技术来源:www.20888.net    点击数:    更新时间:2006-12-9    

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
' ************************************************************************
' Script Compont Object Model
' Design for Active Server Pages
'
' Copyright 2004  Version 2.0
' Made by 尹曙光
' ************************************************************************
function CreateCPageNavbar()
  set CreateCPageNavbar=new CPageNavbar
end function
Class  CPageNavbar
   Public SplitSize '分页显示的容量
   public PnWidth
   public PnAlign
   public PlWidth  '表格宽度
   public PlAlign  ' 表格的对齐方式
   private PageSize
   private RecordCount  '总记录数]
   private PageCount   '总页数
   private CurrentPage  '当前的页码
   private SplitCount '分页的显示的总页数
   private CurrentSplit '当前的分页的分页码
  '===============================================================
  Private Sub Class_Initialize   ' Setup Initialize event.
          SplitSize=10
          PnWidth="100%"
          PnAlign="right"
          PlWidth="100%"  //表格宽度
          PlAlign="right"  // 表格的对齐方式
    PageSize=0
          RecordCount=0
          CurrentPage=1
    PageCount=1
    SplitCount=1
    CurrentSplit=1
   End Sub
   Private Sub Class_Terminate   ' Setup Terminate event.
   End Sub
 
   public sub InitPageNavbar(byval iPageSize,byval iRecordCount)
         PageSize=cint(iPageSize)
         RecordCount=clng(iRecordCount)
   PageCount=fix(RecordCount/PageSize)+1
   SplitCount=fix(PageCount/SplitSize)+1
   end sub

   public function GetCurrentPage()
          'on error resume next
          dim pageNo
       pageNo =trim(Request.QueryString ("_Page_No_"))
          '如果没有选择第几页,则默认显示第一页;
          if ( (not IsNumeric(pageNo)) or pageNo="")  then
             pageNo =1
          end if
    CurrentPage=clng(pageNo)
    if (CurrentPage<1) then
             CurrentPage=1
    end if 
    if (CurrentPage>PageCount) then
             CurrentPage=PageCount
    end if 
    CurrentSplit=fix(CurrentPage/SplitSize)+1
          GetCurrentPage=CurrentPage
   end function

   public  function plDisplay()
       dim strBuilder,p,itmp
       strBuilder=""
      '首组为第0族
      strBuilder=strBuilder+"<table border='0' cellpadding='0' cellspacing='0' "
      strBuilder=strBuilder+" width='"&PlWidth&"'  align='"&PlAlign&"'>"
      strBuilder=strBuilder+" <tr> "
      strBuilder=strBuilder+" <td valign='middle' align='right'>分页:"
      if (CurrentSplit=1) then
    strBuilder=strBuilder+"<font face='webdings'  color='#ff0000'>9</font> "
    strBuilder=strBuilder+"<font face='webdings' color='#ff0000'>7</font>"
      else
    strBuilder=strBuilder+"<a href='?_Page_No_=1' title='首页'><font face='webdings'>9</font></a>   "
    strBuilder=strBuilder+"<a href='?_Page_No_="&cstr((CurrentSplit-2)*SplitSize)&"' title='上"&cstr(SplitSize)&"页'><font face='webdings'>7</font></a>   "
   end if
     strBuilder=strBuilder+"<b>"
      '分页列表
   itmp=(CurrentSplit-1)*SplitSize+1
     for i=itmp to (itmp+SplitSize-1)
        if (i=CurrentPage) then
      strBuilder=strBuilder+"<font color='#000000'>"&cstr(i)&"</font> "
     else
      strBuilder=strBuilder+"<a href=?_Page_No_="&cstr(i)&" title='转到: 第"&cstr(i)&"页'>"&cstr(i)&"</a>   "
     end if
     if (i>=PageCount) then
       exit for
        end if
  next
  strBuilder=strBuilder+"</b>"
      '显示下十页
     if (CurrentSplit<SplitCount) then
        strBuilder=strBuilder+"<a href='?_Page_No_="&cstr((CurrentSplit)*SplitSize)&"' title='下十页'><font face='webdings'>8</font&

[1] [2] 下一页

电脑技术录入:lcsnow    责任编辑:lcsnow 
  • 上一篇电脑技术:

  • 下一篇电脑技术:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    没有相关电脑技术
    Copyright @ 2006 天空资源网 All Rights Reserved
    Designed by: lcsnow E-mail: admin#seesky.net
    皖ICP备05005479号