js -- 分页功能
html 代码
<html>
<head>
<meta charset='utf-8'>
<script type="text/javascript" src="page.js"></script> <style type="text/css">
#idData {color: red;border: solid;text-align: center;}
a{text-decoration: none;}
</style>
</head>
<body onLoad="goPage(1,10);">
<table id="idData" width="70%">
<tr><td>liujinzhong1</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong2</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong3</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong4</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong5</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong6</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong7</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong8</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong9</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong10</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong11</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong12</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong13</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong14</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong15</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong16</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong17</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong18</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong19</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong20</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong21</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong22</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong23</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong24</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong25</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong26</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong27</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong28</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong29</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong30</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong31</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong32</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong33</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong34</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong35</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong36</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong37</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong38</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong39</td><td></td><td>男</td><td>山西吕梁</td></tr>
<tr><td>liujinzhong40</td><td></td><td>男</td><td>山西吕梁</td></tr>
</table>
<table width="60%" align="right">
<tr><td><div id="barcon" name="barcon"></div></td></tr>
</table>
</body>
</html>
js 分页
/**
* 分页函数
* pno--页数
* psize--每页显示记录数
* 分页部分是从真实数据行开始,因而存在加减某个常数,以确定真正的记录数
* 纯js分页实质是数据行全部加载,通过是否显示属性完成分页功能
**/
function goPage(pno,psize){
var itable = document.getElementById("idData");
var num = itable.rows.length;//表格所有行数(所有记录数)
console.log(num);
var totalPage = ;//总页数
var pageSize = psize;//每页显示行数
//总共分几页
if(num/pageSize > parseInt(num/pageSize)){
totalPage=parseInt(num/pageSize)+;
}else{
totalPage=parseInt(num/pageSize);
}
var currentPage = pno;//当前页数
var startRow = (currentPage - ) * pageSize+;//开始显示的行 31
var endRow = currentPage * pageSize;//结束显示的行 40
endRow = (endRow > num)? num : endRow;
console.log(endRow);
//遍历显示数据实现分页
for(var i=;i<(num+);i++){
var irow = itable.rows[i-];
if(i>=startRow && i<=endRow){
irow.style.display = "block";
}else{
irow.style.display = "none";
}
}
var pageEnd = document.getElementById("pageEnd");
var tempStr = "共"+num+"条记录 分"+totalPage+"页 当前第"+currentPage+"页";
if(currentPage>){
tempStr += "<a href=\"#\" onClick=\"goPage("+()+","+psize+")\">首页</a>";
tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage-)+","+psize+")\"><上一页</a>"
}else{
tempStr += "首页";
tempStr += "<上一页";
} if(currentPage<totalPage){
tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage+)+","+psize+")\">下一页></a>";
tempStr += "<a href=\"#\" onClick=\"goPage("+(totalPage)+","+psize+")\">尾页</a>";
}else{
tempStr += "下一页>";
tempStr += "尾页";
} document.getElementById("barcon").innerHTML = tempStr; }

js -- 分页功能的更多相关文章
- 自己封装的JS分页功能[用于搭配后台使用]
* 2016.7.03 修复bug,优化代码逻辑 * 2016.5.25 修复如果找不到目标对象的错误抛出. * 2016.5.11 修复当实际页数(pageNumber)小于生成的页码间隔数时的bu ...
- jsp、js分页功能的简单总结
一.概述 首先,我们要明确为何需要分页技术,主要原因有以下: 1.分页可以提高客户体验度,适当地选择合适的数据条数,让页面显得更有条理,使得用户体验感良好,避免过多数据的冗余. 2.提高性能的需要.分 ...
- jQuery+AJAX实现纯js分页功能
使用jQuery的AJAX技术,在bootstrap的框架下搭建的纯js分页 bootstrap作为Twitter推的一款前端框架,效果个人还是觉得很不错的.这次只是拿来作为网页元素的css样式表使用 ...
- js分页功能实现
实现一个js的分页并在弹出框中显示 1.分页插件使用:bootstarp-paginator.js,需要先引入bootstarp.js和jquery.js等: !function($){"u ...
- 前端js分页功能的实现,非常实用,新手必看
分享一个前端拿到数据后,自己生成分页的案例,案例如图显示,点击搜索后查询数据,显示数据列表,前端根据数据显示正确的分页 附上代码:代码附上,简单粗暴,自己用过的,兼容性好,没有封装,可以很好的分页原理 ...
- 简单封装分页功能pageView.js
分页是一个很简单,通用的功能.作为一个有经验的前端开发人员,有义务把代码中类似这样公共的基础性的东西抽象出来,一来是改善代码的整体质量,更重要的是为了将来做类似的功能或者类似的项目,能减少不必要的重复 ...
- [Ext JS 4] Grid 实战之分页功能
前言 分页功能的实现有两种途径: 一种是服务端分页方式, 也就是web客户端传递页码参数给服务端,服务端根据页面参数返回指定条数的数据.也就是要多少取多少.这种方式比较适合Grid 的数据量很大,需 ...
- C#设计模式总结 C#设计模式(22)——访问者模式(Vistor Pattern) C#设计模式总结 .NET Core launch.json 简介 利用Bootstrap Paginator插件和knockout.js完成分页功能 图片在线裁剪和图片上传总结 循序渐进学.Net Core Web Api开发系列【2】:利用Swagger调试WebApi
C#设计模式总结 一. 设计原则 使用设计模式的根本原因是适应变化,提高代码复用率,使软件更具有可维护性和可扩展性.并且,在进行设计的时候,也需要遵循以下几个原则:单一职责原则.开放封闭原则.里氏代替 ...
- 原生js实现分页功能
原生就是实现分页功能 代码如下: var pagination = function(option,fun){ this.parentId = option.id; //容器 this.pageSiz ...
随机推荐
- #p-complete原来比np更难
转载一下豆瓣的一个不知名的朋友的介绍: NP是指多项式时间内验证其解是否正确.比如: 我们给一个0-1背包的解,就可以在多项式时间内验证是否满足条件.至于是否能找到 满足条件的解,这在NP复杂度里没有 ...
- YYDispatchQueuePool阅读笔记
阅读了开源大神的YYDispatchQueuePool,在此记下一些从中学到的东西. 首先YYDispatchQueuePool.m文件中有如下类型对应: static inline dispatch ...
- js一些常用方法
string 增加 IsNullorEmpty : String.prototype.IsNullOrEmpty = function (r) { if (r === undefined || ...
- 《剑指offer》旋转数组的最小数字
一.题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 二.输入描述 输入一个递增排序的数组的一个旋转 三.输出描述 输出旋转数组的最小元素 例如: 例如数组{3,4,5,1 ...
- DAG-背包九解-01背包
饭卡: 电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额.如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),否则无法购买(即使金额足够 ...
- 三维偏序(陌上花开) CDQ分治
十分巧妙. Code: #include <cstdio> #include <algorithm> #include <cstring> #define setI ...
- 运行npm start vue.js项目 出现 npm ERR! missing script: start 错误
npm ERR! missing script: start 错误 有可能缺少依赖包,运行nmp install安装依赖(一般都依赖很多包,过程有点慢),安装完后发现多一个 node_modules文 ...
- BZOJ 1176[Balkan2007]Mokia(CDQ分治)
1176: [Balkan2007]Mokia Time Limit: 30 Sec Memory Limit: 162 MBSubmit: 3381 Solved: 1520[Submit][S ...
- MySql系列之多表查询
多表连接查询 #重点:外链接语法 SELECT 字段列表 FROM 表1 INNER|LEFT|RIGHT JOIN 表2 ON 表1.字段 = 表2.字段; 交叉连接:不适用任何匹配条件.生成笛卡尔 ...
- [洛谷P1939]【模板】矩阵加速(数列)
题目大意:给你一个数列a,规定$a[1]=a[2]=a[3]=1$,$a[i]=a[i-1]+a[i-3](i>3)$求$a[n]\ mod\ 10^9+7$的值. 解题思路:这题看似是很简单的 ...