Javascript实现的分页函数

2016-02-19 11:21 10 1 收藏

今天图老师小编给大家精心推荐个Javascript实现的分页函数教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

【 tulaoshi.com - Web开发 】

From: IECN.Net ; Author: 钟钟

/**
 * 分页类构造
 * 参数 nTotalList: 总条数
 * 参数 nPageSize: 每页显示条数
 * 参数 nPageNum: 当前页码
 * 参数 sPageUrl: 分页链接的URL,页码以[pn]代替,输出时将被替换为实际页码
 * 参数 nPageListSize: 页码列表(下拉框)中显示的最多页码条数。该参数可省略,默认100
 */
function Pagination(nTotalList, nPageSize, nPageNum, sPageUrl, nPageListSize) {
  this.totalList = nTotalList;
  this.pageSize = nPageSize;
  this.pageNum = nPageNum;
  if (nTotalList == 0)
    this.totalPages = 1;
  else
    this.totalPages = Math.floor((this.totalList-1)/this.pageSize + 1);
  this.pageUrl = sPageUrl;
  if (arguments[4])
    this.pageListSize = nPageListSize;
  else
    this.pageListSize = 100;
}

/**
 * 生成分页,将HTML直接输出
 * 无参数
 * 无返回值
 */
Pagination.prototype.generate = function() {
  var output = "";
  output += "table width="98%" cellspacing="1" cellpadding="3" align="center"trtd align="right"";
  output += "共 " + this.totalList + " 条 每页 " + this.pageSize + " 条 当前第 ";
  output += "select onchange="if(this.value)location.href='" + this.pageUrl + "'.replace(/[pn]/,";
  output += "this.value);" align="absMiddle" style="font:normal 9px Verdana,Arial,宋体;"";
  var firstPage = this.pageNum - Math.floor(this.pageListSize/2);
  if (firstPage  1)
    firstPage = 1;
  var lastPage = firstPage + this.pageListSize - 1;
  if (lastPage  this.totalPages) {
    lastPage = this.totalPages;
    firstPage = lastPage - this.pageListSize + 1;
    if (firstPage  1)
      firstPage = 1;
  }
  if (firstPage  1) {
    output += "option value="1"1/option";
    if (firstPage  2)
      output += "option value=""…/option";
  }
  for (var p = firstPage; p = lastPage; p++) {
    output += "option value="" + p + """;
    if (p == this.pageNum)
      output += " selected="yes"";
    output += "" + p + "/option";
  }
  if (lastPage  this.totalPages) {
    if (lastPage  this.totalPages - 1)
      output += "option value=""…/option";
    output += "option value="" + this.totalPages + """ + this.totalPages + "/option";
  }
  if (this.pageNum  this.totalPages)
    output += "option value="" selected="yes"页码超出范围/option";
  output += "/select";
  output += "/" + this.totalPages + " 页 ";
  if (this.pageNum == 1) {
    output += "[首页] ";
    output += "[上页] ";
  }
  else {
    output += "a href="" + this.pageUrl.replace(/[pn]/, "1") + ""[首页]/a ";
    output += "a href="" + this.pageUrl.replace(/[pn]/, this.pageNum-1) + ""[上页]/a ";
  }
  if (this.pageNum == this.totalPages) {
    output += "[下页] ";
    output += "[尾页]";
  }
  else {
    output += "a href="" + this.pageUrl.replace(/[pn]/, this.pageNum+1) + ""[下页]/a ";
    output += "a href="" + this.pageUrl.replace(/[pn]/, this.totalPages) + ""[尾页]/a ";
  }
  output += "/td/tr/table";
  document.writeln(output);
}

来源:http://www.tulaoshi.com/n/20160219/1597211.html

延伸阅读
标签: Web开发
?php /* 需求,建立一个test数据库,在里边建一个test表,里面就 只要id字段,输入一下数据就可以啦。。 由于水平有限,难免出错。。 */ $conn = mysql_connect("localhost","root",""); $maxnum = 2;  //每页显示记录条数 mysql_select_db("test", $conn); $query1 = "SELECT CO...
标签: ASP
Function ExportPageInfo(ByRef rs,curpage,i,LinkFile) Dim retval, j, pageNumber, BasePage retval = "第" & curpage & "页/总" & rs.pagecount & "页 "  retval = retval & "本页" & ...
标签: Web开发
作者:F. Permadi 译者:Sheneyan(子乌) 英文原文: INTRODUCTION TO JavaScript Functions 中文译文(包括示例):javascript的函数 子乌注:一篇相当不错的function入门文章,个人感觉相当经典。 词语翻译列表: function:函数(Function未翻译) declare:定义 assign:指派,分配 functionbody:函数体(就是函数的内容) object:对象 prop...
标签: Web开发
函数为程序设计人员提供了一个非常方便的能力。通常在进行一个复杂的程序设计时,总是根据所要完成的功能,将程序划分为一些相对独立的部分,每部分编写一个函数。从而,使各部分充分独立,任务单一,程序清晰,易懂、易读、易维护。JavaScript函数可以封装那些在程序中可能要多次用到的模块。并可作为事件驱动的结果而调用的程序。从而实现...
标签: Web开发
函数为程序设计人员提供了一个丰常方便的能力。通常在进行一个复杂的程序设计时,总是根据所要完成的功能,将程序划分为一些相对独立的部分,每部分编写一个函数。从而,使各部分充分独立,任务单一,程序清晰,易懂、易读、易维护。JavaScript函数可以封装那些在程序中可能要多次用到的模块。并可作为事件驱动的结果而调用的程序。从而实...

经验教程

321

收藏

81
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部