最近我遇到问题,就是控制table表格的行不要太长,这里最简单方便的方法就是用前端分页,控制表格显示的行数,在网上找了一番,终于找到一个比较合适的前端分页代码。示例如下:

html代码:

//全局变量

var numCount; //数据总数量

var columnsCounts; //数据列数量

var pageCount; //每页显示的数量

var pageNum; //总页数

var currPageNum ; //当前页数

//页面标签变量

var blockTable;

var preSpan;

var firstSpan;

var nextSpan;

var lastSpan;

var pageNumSpan;

var currPageSpan;

window.οnlοad=function(){

//页面标签变量

blockTable = document.getElementById("blocks");

preSpan = document.getElementById("spanPre");

firstSpan = document.getElementById("spanFirst");

nextSpan = document.getElementById("spanNext");

lastSpan = document.getElementById("spanLast");

pageNumSpan = document.getElementById("spanTotalPage");

currPageSpan = document.getElementById("spanPageNum");

numCount = document.getElementById("blocks").rows.length - 1; //取table的行数作为数据总数量(减去标题行1)

alert(numCount);

columnsCounts = blockTable.rows[0].cells.length;

pageCount = 5;

pageNum = parseInt(numCount/pageCount);

if(0 != numCount%pageCount){

pageNum += 1;

}

firstPage();

};

表格

体重 时间 网址 大小(kB)

424785(Main Chain)

2016-08-12 02:05:22 baidu.com 637.52

424784(Main Chain)

2016-08-12 01:59:57

baidu.com

275.59

424782 (Main Chain)

2016-08-12 01:39:55

baidu.com

998.19

424781 (Main Chain)

2016-08-12 01:38:01

baiu.com

270.23

424778(Main Chain)

2016-08-12 01:31:07

baidu.com

997.83

424760(Main Chain)

2016-08-11 22:52:52

baidu.com

638.13

424754(Main Chain)

2016-08-11 22:23:47

baidu.com

998.05

424749(Main Chain)

2016-08-11 21:12:14

baidu.com

994.33

424732

(Main Chain)

2016-08-11 18:46:18

baidu.com

998.16

424730 (Main Chain)

2016-08-11 18:36:30

baidu.com

998.16

424716 (Main Chain)

2016-08-11 16:21:42

baidu.com

998.03

424710 (Main Chain)

2016-08-11 15:10:04

baidu.com

0.21

424710 (Main Chain)

2016-08-11 15:10:04

baidu.com

0.21

424710 (Main Chain)

2016-08-11 15:10:04

baidu.com

0.21

424710 (Main Chain)

2016-08-11 15:10:04

baidu.com

0.21

第1页

前1页

下1页

最后1页

第  页/总共  页

main.css代码:

body {

}

table .table-striped {

}

table th {

text-align: left;

height: 30px;

background: #deeeee;

padding: 5px;

margin: 0;

border: 0px;

}

table td {

text-align: left;

height: 30px;

margin: 0;

padding: 5px;

border: 0px

}

table tr:hover {

background: #eeeeee;

}

.span6 {

/*width:500px;*/

float: inherit;

margin: 10px;

}

#pagiDiv span {

background: #1e90ff;

border-radius: .2em;

padding: 5px;

}

pagination.js 的代码:

function firstPage() {

hide();

currPageNum = 1;

showCurrPage(currPageNum);

showTotalPage();

for (i = 1; i < pageCount + 1; i++) {

blockTable.rows[i].style.display = "";

}

firstText();

preText();

nextLink();

lastLink();

}

function prePage() {

hide();

currPageNum--;

showCurrPage(currPageNum);

showTotalPage();

var firstR = firstRow(currPageNum);

var lastR = lastRow(firstR);

for (i = firstR; i < lastR; i++) {

blockTable.rows[i].style.display = "";

}

if (1 == currPageNum) {

firstText();

preText();

nextLink();

lastLink();

} else if (pageNum == currPageNum) {

preLink();

firstLink();

nextText();

lastText();

} else {

firstLink();

preLink();

nextLink();

lastLink();

}

}

function nextPage() {

hide();

currPageNum++;

showCurrPage(currPageNum);

showTotalPage();

var firstR = firstRow(currPageNum);

var lastR = lastRow(firstR);

for (i = firstR; i < lastR; i++) {

blockTable.rows[i].style.display = "";

}

if (1 == currPageNum) {

firstText();

preText();

nextLink();

lastLink();

} else if (pageNum == currPageNum) {

preLink();

firstLink();

nextText();

lastText();

} else {

firstLink();

preLink();

nextLink();

lastLink();

}

}

function lastPage() {

hide();

currPageNum = pageNum;

showCurrPage(currPageNum);

showTotalPage();

var firstR = firstRow(currPageNum);

for (i = firstR; i < numCount + 1; i++) {

blockTable.rows[i].style.display = "";

}

firstLink();

preLink();

nextText();

lastText();

}

// 计算将要显示的页面的首行和尾行

function firstRow(currPageNum) {

return pageCount * (currPageNum - 1) + 1;

}

function lastRow(firstRow) {

var lastRow = firstRow + pageCount;

if (lastRow > numCount + 1) {

lastRow = numCount + 1;

}

return lastRow;

}

function showCurrPage(cpn) {

currPageSpan.innerHTML = cpn;

}

function showTotalPage() {

pageNumSpan.innerHTML = pageNum;

}

//隐藏所有行

function hide() {

for (var i = 1; i < numCount + 1; i++) {

blockTable.rows[i].style.display = "none";

}

}

//控制首页等功能的显示与不显示

function firstLink() {

firstSpan.innerHTML = "第1页";

}

function firstText() {

firstSpan.innerHTML = "第1页";

}

function preLink() {

preSpan.innerHTML = "前1页";

}

function preText() {

preSpan.innerHTML = "前1页";

}

function nextLink() {

nextSpan.innerHTML = "下1页";

}

function nextText() {

nextSpan.innerHTML = "下1页";

}

function lastLink() {

lastSpan.innerHTML = "最后1页";

}

function lastText() {

lastSpan.innerHTML = "最后1页";

}

好好研究这里的代码,就能解决实际的问题。

html 前端分页代码怎么写,纯JavaScript实现的前端分页代码相关推荐

  1. 动态分页展示效果(纯JavaScript编写,值得学习)

    动态分页展示效果(纯JavaScript编写,值得学习) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...

  2. html一个页面分页代码怎么写,纯JS前端实现分页代码

    先给大家展示下效果图,如果大家感觉效果不错,请参考实现代码: 因为这是我自己第一次动手用js写分页,写的应该也不是很完美,有些公共的没有抽取出来,但是用起来还是可以的,这块代码是可以把它当做公共的分页 ...

  3. 表格页面html代码怎么写,设置表格标题的html的代码怎么写

    设置表格标题的html的代码怎么写 发布时间:2020-07-09 09:19:09 来源:亿速云 阅读:109 作者:Leah 设置表格标题的html的代码怎么写?很多新手对此不是很清楚,为了帮助大 ...

  4. js 让鼠标右下角有一排小字_JavaScript浮动广告代码,容纯DIV/CSS对联漂浮广告代码,兼容性非常好的js右下角与漂浮广告代码...

    基于JavaScript代码实现随机漂浮图片广告,javascript图片广告 在网上有很多这样的代码,不过未必符合W3C标准,因为在头部加上类似标签之后,漂浮效果就会失效,下面分享一个符合标准的漂浮 ...

  5. 不使用任何框架,手写纯 JavaScript 实现上传本地文件到 ABAP 服务器

    这是 Jerry 2021 年的第 69 篇文章,也是汪子熙公众号总共第 346 篇原创文章. 采用 SAP UI5 sap.ui.unified.FileUploader 控件,结合 Gateway ...

  6. html中实现页面跳转代码怎么写,用JavaScript怎么实现页面跳转?

    JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能.下面我们来看一下如何使用JavaScript跳转页面. JavaScript中几种页面跳 ...

  7. 前端算法及手写算法JavaScript

    一.手写算法 1.获取url中参数列表,保存为对象 function getUrlParam(){ //获取url中参数列表,保存为对象 var url="http://jjhs/dddh? ...

  8. android 纯代码选项卡,纯javascript实现tab选项卡效果代码

    提示:您可以先修改部分代码再运行 买家中心 卖家中心 待处理订单(10) 待确定订单(本月购买额度17826.35元(返20元) 本年购买额度您的购买金额排第1名,奖励100元! 待处理订单(10) ...

  9. html中div居中的代码怎么写,CSS中让DIV居中的代码

    CSS 如何使DIV层水平居中 今天用CSS碰到个很棘手的问题,DIV本身没有定义自己居中的属性, 网上很多的方法都是介绍用上级的text-align: center然后嵌套一层DIV来解决问题. 可 ...

  10. 字体 居中 html代码怎么写,文字和图片居中的HTML代码怎么写?

    HTML 代码 ,怎么将文本/ 图片居中?这是在W3Cschool的编程问答中前端♌蕾儿提出的问题.网友施主同西否给出了详细的解答. html文字居中和html图片居中方法代码,通过在html中实现文 ...

最新文章

  1. webpack 4.14.0 版本太高,无法执行相关指令,(将webpack高版本切换到低版本)--直接覆盖
  2. docker image 实践之容器化 ganglia
  3. swift 高级进阶1:类与结构体(上)
  4. 线性表的顺序存储结构--数组(顺序表)、栈、队列
  5. OpenCV学习——图像二值化处理及二维傅里叶变换
  6. 应广单片机MINI-C编程要点
  7. 安卓手机无线投屏电脑 三种方法轻松搞
  8. 液晶屏背光LED驱动电路设计参考
  9. MediaType介绍
  10. BUUCTF:九连环
  11. 三种安装httpd的方法
  12. python爬取豆瓣网评并写入excel表格中
  13. php写彩票中奖代码,php简单中奖算法(实例)
  14. Vue slot-scope的理解(适合初学者)
  15. 魔搜短视频解析小程序的搭建QA日常解答
  16. 关于5G的NSA和SA,看完秒懂
  17. 使用Socks5代理下载Android源码
  18. 经验总结之 小黄狗智能回收App2.0
  19. 安卓系统级返回键和HOME键
  20. 最近非常火的ChatGPT是啥?

热门文章

  1. 干货| 机器学习模型与算法最全分类汇总!
  2. DCDC BUCK芯片外围电路器件计算-包括Cin、Cout、L、f、cFF、等输出电容、电感计算、补偿电路计算
  3. 支付宝小程序开发笔记
  4. 微信小程序switch 样式重写
  5. Excel常用函数:汇总计算与统计
  6. Windows10新版本设置卓越性能
  7. Android-Studio中AndroidManifest-xml文件中application标签
  8. HashMap头插法
  9. 什么是单臂路由?单臂路由的优缺点?如何配置单臂路由?
  10. assume用法及意思_assume的用法和例句