原生js实现表格翻页和跳转


Posted in Javascript onSeptember 29, 2020

本文实例为大家分享了js实现表格翻页和跳转的具体代码,供大家参考,具体内容如下

原生js实现表格翻页和跳转

js代码里的row_num变量是显示数据的行数,修改后可改变每页显示的数量。

html代码:

<table border="" cellspacing="" cellpadding="" id="table">
 <thead>
 <tr>
  <td>No</td>
  <td>Name</td>
  <td>Age</td>
 </tr>
 </thead>
 <tbody></tbody>
 <tfoot>
 <tr>
  <td colspan="3">
  <input type="button" name="pre-btn" id="pre" value="<" />
  <input type="text" name="page_num" id="page_num" value="" />
  <span id="cur_page"></span>
  <input type="button" name="jump" id="jump" value="跳转" />
  <input type="button" name="next-btn" id="next" value=">" />
  </td>
 </tr>
 </tfoot>
</table>

js代码:

let datas = [
 [1, 'a', 16],
 [2, 'b', 20],
 [3, 'c', 22],
 [4, 'd', 44],
 [5, 'e', 11],
 [6, 'f', 12],
 [7, 'g', 13]
];
let cur_page = 0;
let t = document.querySelector('tbody');
let page_num = document.querySelector('#page_num');
let row_num = 2;
(() => jump_to(cur_page))();

function pre() {
 if (cur_page > 0) {
 cur_page--;
 jump_to(cur_page);
 }
}

function next() {
 if (cur_page < (datas.length / row_num) - 1) {
 cur_page++;
 jump_to(cur_page);
 }
}

function jump_to(page) {
 t.innerHTML = '';
 for (let i = page * row_num; i < (page + 1) * row_num && i < datas.length; i++) {
 let row = t.insertRow();
 for (let item of datas[i]) {
  row.insertCell().innerHTML = item;
 }
 }
 page_num.value = page + 1;
}

document.querySelector('#cur_page').innerText = `/${Math.ceil(datas.length / row_num)}`;
document.querySelector('#pre').onclick = () => pre();
document.querySelector('#next').onclick = () => next();
document.querySelector('#jump').onclick = function() {
 if (page_num.value < (datas.length / row_num) + 1 && page_num.value - 1 !== cur_page && page_num.value > 0 && Number.isInteger(parseInt(page_num.value))) {
 cur_page = page_num.value - 1;
 jump_to(cur_page);
 }
};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Js 本页面传值实现代码
May 17 Javascript
删除javascript中注释语句的正则表达式
Jun 11 Javascript
JS+CSS实现经典的左侧竖向滑动菜单效果
Sep 23 Javascript
jQuery实现进度条效果代码
Dec 17 Javascript
javascript与jquery中的this关键字用法实例分析
Dec 24 Javascript
JavaScript、jQuery与Ajax的关系
Jan 24 Javascript
纯原生js实现table表格的增删
Jan 05 Javascript
vue之nextTick全面解析
May 17 Javascript
微信小程序 如何引入外部字体库iconfont的图标
Jan 31 Javascript
JQuery中DOM节点的操作与访问方法实例分析
Dec 23 jQuery
JS实现扫码枪扫描二维码功能
Jan 03 Javascript
一篇文章学会Vue中间件管道
Jun 20 Vue.js
vue实现井字棋游戏
Sep 29 #Javascript
js实现移动端图片滑块验证功能
Sep 29 #Javascript
js+cavans实现图片滑块验证
Sep 29 #Javascript
如何利用JS将手机号中间四位变成*号
Sep 29 #Javascript
原生JavaScript实现刮刮乐
Sep 29 #Javascript
原生JavaScript实现拖动校验功能
Sep 29 #Javascript
使用JavaScript实现贪吃蛇游戏
Sep 29 #Javascript
You might like
PHP中实现进程间通讯
2006/10/09 PHP
PHP 和 MySQL 基础教程(三)
2006/10/09 PHP
PHP中设置时区方法小结
2012/06/03 PHP
浅谈php serialize()与unserialize()的用法
2013/06/05 PHP
网页里控制图片大小的相关代码
2006/06/13 Javascript
Javascript-Mozilla和IE中的一个函数直接量的问题分析
2007/08/12 Javascript
jquery $.getJSON()跨域请求
2011/12/21 Javascript
jquery中html、val与text三者属性取值的联系与区别介绍
2013/12/29 Javascript
JS实现至少包含字母、大小写数字、字符的密码等级的两种方法
2015/02/03 Javascript
js关于命名空间的函数实例
2015/02/05 Javascript
jQuery实现HTML表格单元格的合并功能
2016/04/06 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
AngularJS入门示例之Hello World详解
2017/01/04 Javascript
深究AngularJS之ui-router详解
2017/06/13 Javascript
js实现鼠标单击Tab表单切换效果
2018/05/16 Javascript
JavaScript实现简单音乐播放器
2020/04/17 Javascript
微信小程序设置滚动条过程详解
2019/07/25 Javascript
JS数组方法join()用法实例分析
2020/01/18 Javascript
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
Java Web开发过程中登陆模块的验证码的实现方式总结
2016/05/25 Python
python+openCV利用摄像头实现人员活动检测
2019/06/22 Python
python如何读取bin文件并下发串口
2019/07/05 Python
Pytorch释放显存占用方式
2020/01/13 Python
python实现视频压缩功能
2020/12/18 Python
CSS3的transition和animation的用法实例介绍
2014/08/20 HTML / CSS
纯HTML5+CSS3制作生日蛋糕代码
2016/11/16 HTML / CSS
HTML5 Canvas的事件处理介绍
2015/04/24 HTML / CSS
eBay美国官网:eBay.com
2020/10/24 全球购物
业绩考核岗位职责
2014/02/01 职场文书
大学新学期计划书
2014/04/28 职场文书
厂区绿化方案
2014/05/08 职场文书
会计专业毕业生求职信
2014/07/04 职场文书
抗洪救灾感谢信
2015/01/22 职场文书
2015年领导干部廉洁自律工作总结
2015/05/26 职场文书
2015中学教师个人工作总结
2015/07/22 职场文书
MySQL 覆盖索引的优点
2021/05/19 MySQL