修复javascript上的分页限制
首先,我是javascript和jquery的新手。 现在,我使用一个javascript文件在一个div内分页。该脚本工作正常,但如果有大量数据,则需要使用“next”和“previous”标记限制分页链接。我找不到办法。目前,分页脚本根据提供的数据显示所有数字,如修复javascript上的分页限制,javascript,jquery,pagination,Javascript,Jquery,Pagination,首先,我是javascript和jquery的新手。 现在,我使用一个javascript文件在一个div内分页。该脚本工作正常,但如果有大量数据,则需要使用“next”和“previous”标记限制分页链接。我找不到办法。目前,分页脚本根据提供的数据显示所有数字,如123456789等。但是,我想让他们看一下,123445next>或者, 这是我的pagination.js var Imtech = {}; Imtech.Pager = function() { this.paragr
123456789
等。但是,我想让他们看一下,123445next>
或者,
这是我的pagination.js
var Imtech = {};
Imtech.Pager = function() {
this.paragraphsPerPage = 3;
this.currentPage = 1;
this.pagingControlsContainer = "#pagingControls";
this.pagingContainerPath = "#content";
this.numPages = function() {
var numPages = 0;
if (this.paragraphs != null && this.paragraphsPerPage != null) {
numPages = Math.ceil(this.paragraphs.length / this.paragraphsPerPage);
}
return numPages;
};
this.showPage = function(page) {
this.currentPage = page;
var html = "";
for (var i = (page-1)*this.paragraphsPerPage; i < ((page-1)*this.paragraphsPerPage) + this.paragraphsPerPage; i++) {
if (i < this.paragraphs.length) {
var elem = this.paragraphs.get(i);
html += "<" + elem.tagName + ">" + elem.innerHTML + "</" + elem.tagName + ">";
}
}
$(this.pagingContainerPath).html(html);
renderControls(this.pagingControlsContainer, this.currentPage, this.numPages());
}
var renderControls = function(container, currentPage, numPages) {
var pagingControls = "<b>Pages</b>: <ul>";
for (var i = 1; i <= numPages; i++) {
if (i != currentPage) {
pagingControls += "<li><a href='#' onclick='pager.showPage(" + i + "); return false;'>" + i + "</a></li>";
} else {
pagingControls += "<li>" + i + "</li>";
}
}
pagingControls += "</ul>";
$(container).html(pagingControls);
}
}
var-Imtech={};
Imtech.Pager=函数(){
本段第页=3;
this.currentPage=1;
this.pagingControlsContainer=“#pagingControls”;
this.pagingContainerPath=“#content”;
this.numPages=函数(){
var numPages=0;
if(this.paragraphs!=null&&this.paragraphspage!=null){
numPages=Math.ceil(this.parations.length/this.paragraphsPerPage);
}
返回数值;
};
this.showPage=函数(第页){
this.currentPage=第页;
var html=“”;
对于(变量i=(第1页)*此.paragraphspage;i<((第1页)*此.paraphspage)+此.paraphspage;i++){
如果(i<本段落长度){
var elem=此.parations.get(i);
html+=“”+elem.innerHTML+“”;
}
}
$(this.pagingContainerPath).html(html);
RenderControl(this.pagingControlsContainer、this.currentPage、this.numPages());
}
var renderControls=函数(容器、当前页面、numPages){
var pagingControls=“页面:”;
对于(var i=1;i您可以更改
renderControls
,如下所示:
var renderControls = function(container, currentPage, numPages, pagesCutoff) {
var pagingControls = "<b>Pages</b>: <ul>";
var prevPosition = currentPage - pagesCutoff;
var nextPosition = currentPage + pagesCutoff;
for (var i = 1; i <= numPages; i++) {
if (i != currentPage) {
if(i >= prevPosition && i <= nextPosition) {
var linkToPage = i == prevPosition ? currentPage - 1 : i == nextPosition ? currentPage + 1 : i;
var linkText = i == prevPosition ? "<< prev" : i == nextPosition ? "next >>" : i;
pagingControls += "<li><a href='#' onclick='pager.showPage(" + linkToPage + "); return false;'>" + linkText + "</a></li>";
}
} else {
pagingControls += "<li>" + i + "</li>";
}
}
pagingControls += "</ul>";
$(container).html(pagingControls);
}
var renderControls=function(容器、当前页面、numPages、pagesCutoff){
var pagingControls=“页面:”;
var prevPosition=currentPage-pagesCutoff;
var nextPosition=currentPage+pagesCutoff;
对于(变量i=1;i=prevPosition&&i