原生js实现表格翻页和跳转
更新时间:2020年09月29日 16:48:46 作者:知我未夠好丶
这篇文章主要为大家详细介绍了原生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无法使用window.location.reload()刷新页面
这篇文章主要介绍在微信浏览器Javascript无法使用window.location.reload()刷新页面的解决方法,比较实用,需要的朋友可以参考下。2016-06-06解决在layer.open中使用时间控件laydate失败的问题
今天小编就为大家分享一篇解决在layer.open中使用时间控件laydate失败的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-09-09
最新评论