`
bevis.cn
  • 浏览: 154586 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Javascript实现分页

阅读更多
<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>

此分页需要一个js文件,一个简单的css样式

下面就是js文件:

//turnpage.js
var beginNum;//blow begin Number
var endNum;//blow end Number
var currentCycle;
var totalCycle;
function initPageDiv(totalPage,currentPage,pageSize){//alert("totalPage;"+totalPage+" ,"+"currentPage:"+currentPage+",pageSize:"+pageSize);
if(totalPage<=0){
totalPage=0;
currentPage=0;
}
if(totalPage >1){
var firstPageHTML='';
if(currentPage==1){
firstPageHTML='<a href="javascript:doFirstPage('+totalPage+','+currentPage+');" class="a2">【首頁】</a>';
}else{
firstPageHTML='<a href="javascript:doFirstPage('+totalPage+','+currentPage+');" class="a1">【首頁】</a>';
}
var lastPageHTML='';
if(currentPage==totalPage){
lastPageHTML='<a href="javascript:doLastPage('+totalPage+','+currentPage+');" class="a2">【末頁】</a>';
}else{
lastPageHTML='<a href="javascript:doLastPage('+totalPage+','+currentPage+');" class="a1">【末頁】</a>';
}

var prePageHTML = '<a href="javascript:doPrePage('+totalPage+','+currentPage+');" class="a1">【上一頁】</a>';
var nextPageHTML = '<a href="javascript:doNextPage(' + totalPage + ',' + currentPage +');" class="a1">【下一頁】</a>';
if(totalPage<=0)
currentPage=0;
//var pageINFO='【第'+currentPage+'頁 共'+totalPage+'頁】';

var pageHTML = '';

calculate(totalPage,currentPage,pageSize);
//alert("begin:"+beginNum+" ,endNum:"+endNum);
for(var k = beginNum ; k <= endNum; k++){
if(k==currentPage){
pageHTML=pageHTML+'<span class="a2"> '+k+' </span>';
continue;
}
pageHTML=pageHTML+'<a href="javascript:trunPages('+totalPage+','+currentPage+','+k+')" class="a1"> '+k+' </a>';
}
var pageHTML_1 = '<br/><a href="javascript:prePageSize('+pageSize+')" class="a2">&lt;</a>';
var pageHTML_2 = '<a href="javascript:laterPageSize('+pageSize+')" class="a1">&gt;</a>';
var in3_content_b = document.getElementById("turnPage");
if(in3_content_b!=null){
//in3_content_b.innerHTML = firstPageHTML + prePageHTML + nextPageHTML + lastPageHTML+pageINFO+pageHTML_1+pageHTML+pageHTML_2;
in3_content_b.innerHTML = firstPageHTML + prePageHTML + nextPageHTML + lastPageHTML + pageHTML_1 + pageHTML + pageHTML_2;
}

}else{

var pageINFO='【第'+currentPage+'頁 共'+totalPage+'頁】';

var in3_content_b = document.getElementById("turnPage");

if(in3_content_b!=null){
in3_content_b.innerHTML = pageINFO;
}
}
}

function trunPages(totalPage,currentPage,pageNumber){//alert(totalPage+";"+currentPage+":"+pageNumber);
if(pageNumber>=1||pageNumber<=totalPage){
document.location=url+pageNumber;
}else{
return;
}

}

function doPrePage(totalPage,currentPage){
if(currentPage <=1){
alert("已經在第一頁");
return;
}else{
document.location=url+(currentPage-1);
}
}

function doNextPage(totalPage,currentPage){
if(currentPage >= totalPage){
alert("已經在最後一頁");
return;
}else{
document.location=url+(currentPage+1);
}
}

function doFirstPage(totalPage,currentPage){
if(currentPage<=1){
alert("已經在第一頁");
return;
}else{
document.location=url+1;
}
}

function doLastPage(totalPage,currentPage){
if(currentPage==totalPage){
alert("已經在最後一頁");
return;
}else{
document.location=url+totalPage;
}
}

function calculate(totalPage,currentPage,pageSize){
var cycle=totalPage%pageSize;
if(cycle==0){
totalCycle=totalPage/pageSize;
}else{
totalCycle=Math.floor(totalPage/pageSize)+1;
}
for(var i=1;i<=totalCycle;i++){
if(currentPage<=i*pageSize){
beginNum=(i-1)*pageSize+1;//alert("b:"+beginNum);
if(totalPage<i*pageSize){
endNum = totalPage;
}else{
endNum=i*pageSize;
}
currentCycle=i;
break;
}
}
}
//前多少页
function prePageSize(pageSize){
var currentPageNum=1;
if(currentCycle>1){//alert("currentCycle:"+currentCycle);
currentPageNum=pageSize*(currentCycle-2)+1;//alert("begin:"+currentPageNum);
document.location=url+currentPageNum;
}
}
//后多少页
function laterPageSize(pageSize){
var currentPageNum=1;
if(currentCycle<totalCycle){
currentPageNum = pageSize*currentCycle+1;//alert("begin:"+currentPageNum);
document.location=url+currentPageNum;
}
}

下面是css文件,用到两个样式,只要页面把这个样式用进去就好了

//css
.a1 {
font-size: 12px;
color: #7BAF29;
line-height: 25px;}
A.a1:link {color: #7BAF29; text-decoration: none;}
A.a1:visited {color:#7BAF29; text-decoration:none;}
A.a1:hover {text-decoration:none;color: #B3D878;}

.a2{font-size:12px;
color: #666666;
line-height: 20px;
text-decoration: none ;}
A.a2:link {color: #666666; text-decoration: none;}
A.a2:visited {color:#666666; text-decoration:none;}
A.a2:hover {text-decoration:none;color: #999999;
}

下面是最重要地,在你的jsp页面放入一个div

<div algin="center" valgin="BOTTOM" id="turnPage" class="in3_content_b"></div>

然后再把以下js 放在页面


<script language="javascript">
var url="<%=base%>/pages/public/searchMagazine.jspx?magazineName="+encodeURI("<%=magazineName%>")+"&magazineContext="+encodeURI("<%=magazineContext%>")+"&pageNum=";
initPageDiv(<%=totalPages %>,<%=pageNumber %>,10);
</script>

totalPages 为总页数

pageNumber 为本页是第几页

10表示分页<1 2 3 4 5 6 7 8 9 10>每次显示10页,可以调整

当用户点了数字或下一页,或 上一页,或首页,或末页时,就用会url的值后面加上页码,发出请求,可根据需要把url改为自己的请求

分享到:
评论

相关推荐

    纯JAVASCRIPT实现分页

    得用JavaScript面向对象编程,编写了一个分页通过控件。代码精简,功能强大.

    Ajax+Servlet+Java+JavaScript实现分页

    在本教程中,我们将探讨如何利用Ajax、Servlet、Java和JavaScript来实现这一功能。 首先,让我们从Java后端开始。Servlet是Java Web应用程序中的一个关键组件,用于处理HTTP请求和响应。在分页场景中,Servlet主要...

    多种javascript实现的分页样式

    下面我们将详细介绍几种JavaScript实现分页样式的常见方法和关键技术点。 1. 基础分页实现: 分页的基本原理是通过JavaScript获取服务器上所有数据的总页数,然后根据当前页码显示相应的内容。可以使用数组模拟...

    javaScript分页

    在本项目中,我们将探讨如何使用纯JavaScript实现分页功能,以及涉及的相关知识点。 首先,我们需要理解分页的基本原理。分页的核心思想是将大数据集分成多个较小的部分,每个部分称为一页。用户每次只加载和查看...

    JavaScript实现分页效果

    JavaScript实现分页效果是网页开发中的常见需求,特别是在数据量较大、需要分批加载内容时。本示例通过JavaScript和CSS实现了一个简单的分页组件,适用于动态数据展示和用户交互。 首先,HTML结构中包含了分页组件...

    原生javascript实现分页效果

    本文将详细介绍如何使用原生JavaScript实现分页效果,这种方法不依赖于任何第三方框架,仅使用纯JavaScript代码来完成分页逻辑和UI的构建。 首先,了解分页实现的基本原理是必要的。分页通常涉及到以下几个核心部分...

    JS实现分页效果代码.zip

    本资源“JS实现分页效果代码.zip”提供了一种用JavaScript实现分页功能的解决方案,特别适用于动态加载数据或者需要优化用户浏览体验的场合。以下是对这个压缩包中包含的两个文件及其相关知识点的详细解释。 1. **...

    纯javascript实现分页(两种方法)

    本篇文章将介绍两种纯JavaScript实现分页的方法,适用于不依赖任何外部库或框架的情况。 **方法一** 首先,我们需要在HTML中创建一个用于显示分页链接的基本结构。这个结构包括上一页、下一页、数字页码、跳转至...

    JavaScript脚本分页代码

    以上就是JavaScript实现分页功能的基本流程。通过结合HTML、CSS和JavaScript,我们可以创建出各种样式和交互效果丰富的分页组件。在实际项目中,还需要考虑性能优化,比如缓存已加载的数据,以及处理分页状态的持久...

    两个纯JS实现分页的例子源码 (真经典)

    本篇将详细介绍两个纯JavaScript实现分页的经典例子,帮助你理解和掌握这一核心技术。 首先,我们要明白分页的基本原理:将大量数据分为若干个部分,每次只加载一部分到页面上,用户可以通过导航按钮切换不同的数据...

    纯js实现分页 可跳转指定页

    本文将详细讨论如何使用纯JavaScript实现分页功能,以及如何实现跳转指定页和自定义样式。 首先,我们需要理解分页的基本原理。分页通常涉及到两个关键参数:每页显示的数据量(每页条数)和当前页数。根据这些参数...

    利用Ajax技术实现分页

    4. 无刷新分页样式:通过CSS和JavaScript实现分页按钮的激活、禁用状态,以及当前页的高亮效果。 总结,Ajax技术为实现网页分页提供了便利,通过异步通信减少页面刷新,提高了用户体验。理解Ajax的工作原理,编写...

    js实现的分页

    本文将深入探讨如何使用JavaScript实现分页功能,以及相关的技巧和注意事项。 首先,我们需要理解分页的基本概念。通常,一个分页系统包括以下几个关键部分: 1. **总记录数**:这是你要展示的数据总数。 2. **每...

    javascript分页(页码生成)

    给定的代码片段展示了如何使用JavaScript实现分页功能。以下是关键代码段的详细解析: ```javascript // 页码生成函数 function upPage(p) { nowPage = p; // 隐藏所有行 for (var i = 0; i ; i++) { obj[i]....

    分页导航通用类和js

    在JavaScript实现分页导航时,我们通常会创建一个分页类,该类包含以下关键方法: 1. 初始化:根据总数据量和每页显示的数据量计算总页数,并生成初始的分页状态。 2. 更新页码:当用户点击分页按钮或输入新的页码时...

    简单JS实现分页带数据查询效果.zip

    这个压缩包“简单JS实现分页带数据查询效果.zip”提供了一个使用JavaScript实现分页和数据查询的示例。下面我们将详细探讨这个主题。 1. **基础概念** - **分页**:为了提高用户体验和页面加载速度,将大量数据...

    javascript分页实现

    在这个主题中,我们将深入探讨JavaScript如何实现分页功能,以及与Spring框架的整合。 首先,理解JavaScript分页的基本原理。在网页上,分页通常涉及到两个主要部分:前端UI的展示和后端数据的获取。前端UI包括页码...

    javascript经典特效---分页的文本显示.rar

    这个名为"javascript经典特效---分页的文本显示.rar"的压缩包文件显然是关于使用JavaScript实现分页文本显示的一个教程或示例。下面将详细讨论JavaScript分页的基本原理、实现方法以及可能涉及到的相关技术。 分页...

    DOMINO表单分页实现原理

    2. **JavaScript实现分页**: 使用JavaScript进行分页更加灵活,可以直接在客户端进行计算和页面更新,减少了服务器的负载。一个名为`getpage()`的JavaScript函数可以获取URL中的`start`值,然后动态修改表单元素,...

    分页js文件

    在这个主题中,我们将深入探讨"分页js"的相关知识点,包括分页的基本原理、JavaScript实现分页的方法、以及如何结合CSS(如`pageNav.css`)优化分页的样式。 首先,我们要理解分页的基本概念。分页通常用于显示...

Global site tag (gtag.js) - Google Analytics