原生js實(shí)現(xiàn)表格翻頁(yè)和跳轉(zhuǎn)
本文實(shí)例為大家分享了js實(shí)現(xiàn)表格翻頁(yè)和跳轉(zhuǎn)的具體代碼,供大家參考,具體內(nèi)容如下

js代碼里的row_num變量是顯示數(shù)據(jù)的行數(shù),修改后可改變每頁(yè)顯示的數(shù)量。
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="跳轉(zhuǎn)" /> <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);
}
};
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
javascript如何讀寫本地sqlite數(shù)據(jù)庫(kù)
這篇文章主要介紹了javascript如何讀寫本地sqlite數(shù)據(jù)庫(kù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
JS如何實(shí)現(xiàn)Base64編碼和解碼(及中文亂碼問(wèn)題)
這篇文章主要給大家介紹了關(guān)于JS如何實(shí)現(xiàn)Base64編碼和解碼及中文亂碼問(wèn)題的相關(guān)資料,Base64編碼是一種常用的將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為文本數(shù)據(jù)的方式,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10
js正則校驗(yàn)特殊的不可見(jiàn)字符的具體實(shí)現(xiàn)
用戶可能從Excel或者其他地方直接復(fù)制粘貼,這時(shí)候提交到后端會(huì)導(dǎo)致獲取的用戶輸入中包含一些特殊的不可見(jiàn)字符,本文主要介紹了js正則校驗(yàn)特殊的不可見(jiàn)字符的具體實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-06-06
解決微信瀏覽器Javascript無(wú)法使用window.location.reload()刷新頁(yè)面
這篇文章主要介紹在微信瀏覽器Javascript無(wú)法使用window.location.reload()刷新頁(yè)面的解決方法,比較實(shí)用,需要的朋友可以參考下。2016-06-06
js判斷一個(gè)對(duì)象是否在一個(gè)對(duì)象數(shù)組中(場(chǎng)景分析)
這篇文章主要介紹了js判斷一個(gè)對(duì)象是否在一個(gè)對(duì)象數(shù)組中,本文通過(guò)場(chǎng)景分析給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2022-08-08
整理Javascript基礎(chǔ)入門學(xué)習(xí)筆記
整理Javascript基礎(chǔ)入門學(xué)習(xí)筆記,之前一系列的文章是跟我學(xué)習(xí)Javascript,本文就是進(jìn)一步學(xué)習(xí)javascript,希望大家繼續(xù)關(guān)注2015-11-11
神奇的代碼 通殺各種網(wǎng)站-可隨意修改復(fù)制頁(yè)面內(nèi)容
在瀏覽器地址欄輸入這一行代碼,然后回車,就發(fā)現(xiàn)整個(gè)頁(yè)面都可以隨意編輯了。僅僅是一行很短的代碼。2008-07-07
JavaScript實(shí)現(xiàn)樹(shù)結(jié)構(gòu)轉(zhuǎn)換的五種方法總結(jié)
在?JavaScript?編程中,將數(shù)組轉(zhuǎn)換為樹(shù)結(jié)構(gòu)是一個(gè)常見(jiàn)的需求。本篇博客將介紹五種常用的方法來(lái)實(shí)現(xiàn)數(shù)組轉(zhuǎn)樹(shù)結(jié)構(gòu),希望對(duì)大家有所幫助2023-03-03
解決在layer.open中使用時(shí)間控件laydate失敗的問(wèn)題
今天小編就為大家分享一篇解決在layer.open中使用時(shí)間控件laydate失敗的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09

