原生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 相关文章推荐
jquery text()要注意啦
Oct 30 Javascript
JavaScript中几个重要的属性(this、constructor、prototype)介绍
May 19 Javascript
js 使FORM表单的所有元素不可编辑的示例代码
Oct 17 Javascript
javascript制作loading动画效果 loading效果
Jan 14 Javascript
javascript动态获取登录时间和在线时长
Feb 25 Javascript
js控制li的隐藏和显示实例代码
Oct 15 Javascript
JavaScript中利用for循环遍历数组
Jan 15 Javascript
微信小程序中换行空格(多个空格)写法详解
Jul 10 Javascript
使用vue-router与v-if实现tab切换遇到的问题及解决方法
Sep 07 Javascript
微信小程序-API接口安全详解
Jul 16 Javascript
JavaScript命令模式原理与用法实例详解
Mar 10 Javascript
使用原生javascript开发计算器实例代码
Feb 21 Javascript
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
Laravel SQL语句记录方式(推荐)
2016/05/26 PHP
php根据年月获取当月天数及日期数组的方法
2016/11/30 PHP
PHP正则匹配到2个字符串之间的内容方法
2018/12/24 PHP
jQuery对象与DOM对象之间的转换方法
2010/04/15 Javascript
Jquery下判断Id是否存在的代码
2011/01/06 Javascript
JavaScript中创建类/对象的几种方法总结
2013/11/29 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
2015/06/19 Javascript
基于BootStrap实现局部刷新分页实例代码
2016/08/08 Javascript
js Canvas绘制圆形时钟效果
2017/02/17 Javascript
vue.js全局API之nextTick全面解析
2017/07/07 Javascript
Python中实现对list做减法操作介绍
2015/01/09 Python
利用Django框架中select_related和prefetch_related函数对数据库查询优化
2015/04/01 Python
Python functools模块学习总结
2015/05/09 Python
关于Django外键赋值问题详解
2017/08/13 Python
python ansible服务及剧本编写
2017/12/29 Python
Python基于最小二乘法实现曲线拟合示例
2018/06/14 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
Python 中的lambda函数介绍
2018/10/10 Python
Python、 Pycharm、Django安装详细教程(图文)
2019/04/12 Python
如何使用Python自动控制windows桌面
2019/07/11 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
2020/08/22 Python
英国领先的隐形眼镜在线供应商:Lenstore.co.uk
2019/11/24 全球购物
C++面试题目
2013/06/25 面试题
函授大专自我鉴定
2013/11/01 职场文书
计算机专业大学生的自我评价
2013/11/14 职场文书
小学班主任寄语大全
2014/04/04 职场文书
拉拉队口号
2014/06/16 职场文书
爱护草坪标语
2014/06/24 职场文书
教师求职自荐信范文
2015/03/04 职场文书
任命通知范文
2015/04/21 职场文书
幼儿园开学通知
2015/04/24 职场文书
2015年资料员工作总结
2015/04/25 职场文书
宾馆客房管理制度
2015/08/06 职场文书
初二英语教学反思
2016/02/15 职场文书
css让页脚保持在底部位置的四种方案
2022/07/23 HTML / CSS