脚本分页
来源:互联网 发布:js length 中文 编辑:程序博客网 时间:2024/05/16 04:42
/**
* 分页类构造
* 参数 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/"><tr><td 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);
}
* 分页类构造
* 参数 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/"><tr><td 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);
}
- 脚本分页
- 分页脚本
- Oracle大批量分页脚本
- Sql 2005 分页脚本
- 通用sql分页脚本
- jQuery客户端脚本分页
- 分页脚本代码
- javascript : 客户端分页脚本
- SQL高效分页脚本
- js创建分页脚本
- 分页sql脚本
- 分页7种JS脚本分页代码
- DWR 下的脚本分页
- 对数组分页javaScript脚本
- 优化oracle内存分页脚本
- pdf_分页器脚本程序
- HTML纯Js分页,带分页脚本和数据例子
- oracle写脚本实现分页操作
- GetCallbackEventReference方法实现局部刷新,回调非WebSerice实现
- 可扩展多线程异步Socket服务器框架EMTASS 2.0
- DIV弹出窗口控件
- ComboBox的取值问题
- 身为高尔夫“贵族” 您一定要维护的权益
- 脚本分页
- Chrome漏洞又出现
- 正则表达式的贪婪模式和非贪婪模式,如何取div ,li 标签的循环内容,采集别人网站的内容
- 悬浮活动窗
- 关于IE、Firefox、Opera页面呈现异同
- XML与DataSet的相互转换类
- C#操作XML文档
- 中小企业项目团队组建和实施流程探索
- URL编码反编码