JS基于封裝函數(shù)實(shí)現(xiàn)的表格分頁(yè)完整示例
本文實(shí)例講述了JS基于封裝函數(shù)實(shí)現(xiàn)的表格分頁(yè)。分享給大家供大家參考,具體如下:
HTML代碼:
<html> <head> <meta charset='utf-8'> <title>www.dbjr.com.cn js表格分頁(yè)</title> <script type="text/javascript" src="script.js"></script> <style type="text/css"> #idData {color: red;border: solid;text-align: center;} a{text-decoration: none;} </style> </head> <body> <table id="idData" width="70%"> <tr><td>測(cè)試編號(hào)1</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)2</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)3</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)4</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)5</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)6</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)7</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)8</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)9</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)10</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)11</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)12</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)13</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)14</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)15</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)16</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)17</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)18</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)19</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)20</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)21</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)22</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)23</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)24</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)25</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)26</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)27</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)28</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)29</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)30</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)31</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)32</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)33</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)34</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)35</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)36</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)37</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)38</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)39</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> <tr><td>測(cè)試編號(hào)40</td><td>25</td><td>單元格1</td><td>單元格2</td></tr> </table> <table width="60%" align="right"> <tr><td><div id="barcon" name="barcon"></div></td></tr> </table> </body> </html> <script type="text/javascript" language="javascript"> window.onload = function(){ goPage(1,10); }; </script>
script.js:
/** * 分頁(yè)函數(shù) * pno--頁(yè)數(shù) * psize--每頁(yè)顯示記錄數(shù) * 分頁(yè)部分是從真實(shí)數(shù)據(jù)行開始,因而存在加減某個(gè)常數(shù),以確定真正的記錄數(shù) * 純js分頁(yè)實(shí)質(zhì)是數(shù)據(jù)行全部加載,通過是否顯示屬性完成分頁(yè)功能 **/ function goPage(pno,psize){ var itable = document.getElementById("idData"); var num = itable.rows.length;//表格所有行數(shù)(所有記錄數(shù)) console.log(num); var totalPage = 0;//總頁(yè)數(shù) var pageSize = psize;//每頁(yè)顯示行數(shù) //總共分幾頁(yè) if(num/pageSize > parseInt(num/pageSize)){ totalPage=parseInt(num/pageSize)+1; }else{ totalPage=parseInt(num/pageSize); } var currentPage = pno;//當(dāng)前頁(yè)數(shù) var startRow = (currentPage - 1) * pageSize+1;//開始顯示的行 31 var endRow = currentPage * pageSize;//結(jié)束顯示的行 40 endRow = (endRow > num)? num : endRow; 40 console.log(endRow); //遍歷顯示數(shù)據(jù)實(shí)現(xiàn)分頁(yè) for(var i=1;i<(num+1);i++){ var irow = itable.rows[i-1]; if(i>=startRow && i<=endRow){ irow.style.display = "block"; }else{ irow.style.display = "none"; } } var pageEnd = document.getElementById("pageEnd"); var tempStr = "共"+num+"條記錄 分"+totalPage+"頁(yè) 當(dāng)前第"+currentPage+"頁(yè)"; if(currentPage>1){ tempStr += "<a href=\"#\" onClick=\"goPage("+(1)+","+psize+")\">首頁(yè)</a>"; tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage-1)+","+psize+")\"><上一頁(yè)</a>" }else{ tempStr += "首頁(yè)"; tempStr += "<上一頁(yè)"; } if(currentPage<totalPage){ tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage+1)+","+psize+")\">下一頁(yè)></a>"; tempStr += "<a href=\"#\" onClick=\"goPage("+(totalPage)+","+psize+")\">尾頁(yè)</a>"; }else{ tempStr += "下一頁(yè)>"; tempStr += "尾頁(yè)"; } document.getElementById("barcon").innerHTML = tempStr; }
使用在線HTML/CSS/JavaScript代碼運(yùn)行工具 http://tools.jb51.net/code/HtmlJsRun測(cè)試運(yùn)行效果如下:
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript表格(table)操作技巧大全》、《JavaScript操作DOM技巧總結(jié)》、《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
相關(guān)文章
用Golang運(yùn)行JavaScript的實(shí)現(xiàn)示例
這篇文章主要介紹了用Golang運(yùn)行JavaScript的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11JavaScript可折疊區(qū)域?qū)崿F(xiàn)代碼
可折疊區(qū)域的基本思想:通過點(diǎn)擊某個(gè)地方來顯示或隱藏屏幕中的某個(gè)區(qū)域。2010-10-10javascript實(shí)現(xiàn)二叉樹遍歷的代碼
這篇文章主要介紹了javascript實(shí)現(xiàn)二叉樹遍歷的代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06javascript中使用replaceAll()函數(shù)實(shí)現(xiàn)字符替換的方法
第一次發(fā)現(xiàn)JavaScript中replace()?方法如果直接用str.replace("-","!")?只會(huì)替換第一個(gè)匹配的字符.2010-12-12window.event.keyCode兼容IE和Firefox實(shí)現(xiàn)js代碼
window.event.keyCode兼容IE和Firefox具體實(shí)現(xiàn)代碼如下,感興趣的朋友可以參考下哈2013-05-05如何用js獲取當(dāng)前域名、Url、相對(duì)路徑和參數(shù)
這篇文章主要給大家介紹了關(guān)于如何用js獲取當(dāng)前域名、Url、相對(duì)路徑和參數(shù)的相關(guān)資料,用Javascript可以單獨(dú)獲取當(dāng)前域名、Url相對(duì)路徑和參數(shù),文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11