亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > JavaScript > 正文

JavaScript分頁功能的實現方法

2024-05-06 16:18:47
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了JavaScript分頁功能的實現方法,涉及javascript操作分頁的相關技巧,需要的朋友可以參考下

本文實例講述了JavaScript分頁功能的實現方法。分享給大家供大家參考。具體實現方法如下:

  1. <script> 
  2. //定義page為全局變量,以便下面使用 
  3. var page; 
  4. window.onload = function() { 
  5. var table = document.getElementById("table"); 
  6. var btnAdd = document.getElementById("btnAdd"); 
  7. var btnModify = document.getElementById("btnModify"); 
  8. var btnDel = document.getElementById("btnDel"); 
  9. var btnRefresh = document.getElementById("btnRefresh"); 
  10. var headCheck = document.getElementById("headCheck"); 
  11. //定義每頁的頁數及初始化table和tbody的id 
  12. page = new Page(5, 'table''sTBodyId'); 
  13. //初始加載init方法 
  14. page.__init__(); 
  15. //初始更新表格 
  16. page.__updateTableRows__(); 
  17. //下面的所有方法,均寫到window.onload之外,否則運行有問題 
  18. function Page(iAbsolute, sTableId, sTBodyId) { 
  19. //每頁顯示數據的條數 
  20. this.absolute = iAbsolute;  
  21. this.tableId = sTableId; 
  22. this.tBodyId = sTBodyId; 
  23. this.rowCount = 0;//記錄數 
  24. this.pageCount = 0;//頁數 
  25. this.pageIndex = 0;//頁索引 
  26. this.__oTable__ = null;//表格引用 
  27. this.__oTBody__ = null;//要分頁內容 
  28. this.__dataRows__ = 0;//記錄行引用 
  29. this.__oldTBody__ = null
  30. //初始化 
  31. Page.prototype.__init__ = function() { 
  32. //獲取table引用 
  33. this.__oTable__ = document.getElementById(this.tableId); 
  34. //獲取tBody引用 
  35. this.__oTBody__ = this.__oTable__.tBodies[this.tBodyId]; 
  36. //獲取tbody的行 
  37. this.__dataRows__ = this.__oTBody__.rows; 
  38. //獲取tbody的總行數 
  39. this.rowCount = this.__dataRows__.length; 
  40. try { 
  41. //判斷初始化時每頁顯示的數據條數,如果定義的值<0或者定義的值>本來就有的行數,那么初始化時顯示本來的行數,否則為當前定義的行數 
  42. this.absolute = (this.absolute <= 0) 
  43. || (this.absolute > this.rowCount) ? this.rowCount 
  44. this.absolute; 
  45. //定義初始化時該顯示幾頁數據,也就是總頁數 
  46. this.pageCount = parseInt(this.rowCount % this.absolute == 0 ? this.rowCount 
  47. this.absolute 
  48. this.rowCount / this.absolute + 1); 
  49. catch (exception) { 
  50. //下一頁 
  51. Page.prototype.nextPage = function() { 
  52.  
  53. if (this.pageIndex + 1 < this.pageCount) { 
  54. this.pageIndex += 1; 
  55. this.__updateTableRows__(); 
  56. //上一頁 
  57. Page.prototype.prePage = function() { 
  58. if (this.pageIndex >= 1) { 
  59. this.pageIndex -= 1; 
  60. this.__updateTableRows__(); 
  61. //首頁 
  62. Page.prototype.firstPage = function() { 
  63. if (this.pageIndex != 0) { 
  64. this.pageIndex = 0; 
  65. this.__updateTableRows__(); 
  66.  
  67. //尾頁 
  68. Page.prototype.lastPage = function() { 
  69. if (this.pageIndex + 1 != this.pageCount) { 
  70. this.pageIndex = this.pageCount - 1; 
  71. this.__updateTableRows__(); 
  72. //頁定位方法 
  73. Page.prototype.aimPage = function(iPageIndex) { 
  74. if (iPageIndex > this.pageCount - 1) { 
  75. this.pageIndex = this.pageCount - 1; 
  76. else if (iPageIndex < 0) { 
  77. this.pageIndex = 0; 
  78. else { 
  79. this.pageIndex = iPageIndex; 
  80. this.__updateTableRows__(); 
  81. //執行分頁時,更新顯示表格內容 
  82. Page.prototype.__updateTableRows__ = function() { 
  83. //pageIndex初始化時為0 
  84. //每頁顯示的數據*當前頁的索引 
  85. var iCurrentRowCount = this.absolute * this.pageIndex; 
  86. //如果截止到當前頁的所有數據+每頁顯示的數據>總數據條數,則還需要顯示this.absolute+ iCurrentRowCount - this.rowCount這些數據,否則,顯示0條數據 
  87. var iMoreRow = this.absolute + iCurrentRowCount > this.rowCount ? this.absolute 
  88. + iCurrentRowCount - this.rowCount 
  89. : 0; 
  90. var tempRows = this.__cloneRows__(); 
  91. //alert(tempRows === this.dataRows); 
  92. //alert(this.dataRows.length); 
  93. //將tbody從table中移除 
  94. var removedTBody = this.__oTable__.removeChild(this.__oTBody__); 
  95. //重新創建tbody 
  96. var newTBody = document.createElement("TBODY"); 
  97. //給他賦一個id值,為原來的id值 
  98. newTBody.setAttribute("id"this.tBodyId); 
  99. for (var i = iCurrentRowCount; i < this.absolute + iCurrentRowCount 
  100. - iMoreRow; i++) { 
  101. //重新給body添加節點 
  102. newTBody.appendChild(tempRows[i]); 
  103. //將新創建的tbody加到table中 
  104. this.__oTable__.appendChild(newTBody); 
  105. /* 
  106. this.dataRows為this.oTBody的一個引用, 
  107. 移除this.oTBody那么this.dataRows引用將銷失, 
  108. code:this.dataRows = tempRows;恢復原始操作行集合. 
  109. */ 
  110. this.__dataRows__ = tempRows; 
  111. this.__oTBody__ = newTBody; 
  112. //克隆原始操作行集合 
  113. Page.prototype.__cloneRows__ = function() { 
  114. var tempRows = []; 
  115. //將當前body中的所有節點及其子節點都克隆一遍 
  116. for (var i = 0; i < this.__dataRows__.length; i++) { 
  117. tempRows[i] = this.__dataRows__[i].cloneNode(1); 
  118. return tempRows; 
  119. </script> 
  120. </head> 
  121. <body> 
  122. <!-- 這里有一個表格,內容隨意,供分頁使用 --> 
  123. <table width="100%" cellpadding="0" cellspacing="0" border="1" 
  124. style="padding: 2"
  125. <tr> 
  126. <td colspan="3" align="center">總共:<%=connDataList.size()%>條記錄每頁顯示5條 
  127. <a href="javascript:void(0);" 
  128. onclick="page.firstPage();return false;">首頁</a> <a 
  129. href="javascript:void(0);" onclick="page.prePage();return false;">上一頁</a> 
  130. <a href="javascript:void(0);" 
  131. onclick="page.nextPage();return false;">下一頁</a> <a 
  132. href="javascript:void(0);" onclick="page.lastPage();return false;">尾頁</a> 
  133. <span id="pageindex"></span> 
  134. </td> 
  135. </tr> 
  136. </table> 
  137. </body> 
  138. </html> 



希望本文所述對大家的javascript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品网站| 不用播放器成人网| 亚洲激情在线视频| 97视频在线观看亚洲| 播播国产欧美激情| 亚洲美女免费精品视频在线观看| 久久这里只有精品99| 日韩中文字幕在线视频播放| 亚洲天堂视频在线观看| 亚洲欧美日本精品| 久久免费在线观看| 91久久国产婷婷一区二区| 欧美极品少妇xxxxⅹ裸体艺术| 中文字幕一区电影| 91影院在线免费观看视频| 91热精品视频| 51久久精品夜色国产麻豆| 欧美成人四级hd版| 精品久久久av| 精品视频在线播放免| 欧美日韩一区二区免费在线观看| 国产一区二区视频在线观看| 精品成人国产在线观看男人呻吟| 国产精品午夜视频| 热久久视久久精品18亚洲精品| 国产精品人成电影| 国产欧美一区二区三区视频| 欧美性黄网官网| 成人精品在线视频| 欧美日韩在线视频观看| 精品电影在线观看| 欧洲精品久久久| 国产视频自拍一区| 久久久免费高清电视剧观看| 98精品国产自产在线观看| 一区二区三区在线播放欧美| 亚洲成色777777女色窝| 一区二区日韩精品| 亚洲欧美精品suv| 亚洲成avwww人| 国产精品久久久久久av福利| 中文国产成人精品久久一| 国产精品国产三级国产专播精品人| 日韩精品中文字幕视频在线| 国产成一区二区| 4p变态网欧美系列| 奇米成人av国产一区二区三区| 国产成人综合亚洲| 日韩在线观看免费全集电视剧网站| 中文字幕成人在线| 色妞色视频一区二区三区四区| 久久精品2019中文字幕| 欧美一级片一区| 国产欧美在线播放| 欧美尺度大的性做爰视频| 亚洲国产日韩欧美在线99| 2018中文字幕一区二区三区| 亚洲成色777777在线观看影院| 亚洲午夜国产成人av电影男同| 最近中文字幕2019免费| 中文字幕不卡在线视频极品| 一区二区三区精品99久久| 伊人伊人伊人久久| 欧美精品生活片| 国产精品久久久久久搜索| 国产成人啪精品视频免费网| 97色在线观看| 日韩资源在线观看| 亚洲国产精品电影在线观看| 成人免费xxxxx在线观看| 高清在线视频日韩欧美| 国产精品av电影| 色偷偷噜噜噜亚洲男人| 日韩中文理论片| 韩国视频理论视频久久| 国产精品永久在线| 日韩a**中文字幕| 国产精品久久77777| 91久久嫩草影院一区二区| 欧美视频一二三| 亚洲精品久久久久久久久久久久久| 91成人精品网站| 久久久国产精彩视频美女艺术照福利| 久久免费视频网| 国产精品视频在线播放| 亚洲成人久久一区| 久久人人97超碰精品888| 亚洲人成在线观看网站高清| 97在线看福利| 九九热精品视频在线播放| 91亚洲va在线va天堂va国| 51久久精品夜色国产麻豆| 亚洲精品99久久久久中文字幕| 亚洲大尺度美女在线| 成人黄色av免费在线观看| 欧美日韩亚洲网| 精品色蜜蜜精品视频在线观看| 国产91热爆ts人妖在线| 欧美一区二区三区艳史| 欧美亚洲在线视频| 国产日韩欧美成人| 日韩电影在线观看免费| 中文字幕久精品免费视频| 成人444kkkk在线观看| 77777亚洲午夜久久多人| 国产日韩av高清| 欧美电影免费看| 亚洲国产精品成人va在线观看| 久久久精品日本| 成人激情电影一区二区| 国产一区二区三区日韩欧美| 国产精品久久久久77777| 久久精品色欧美aⅴ一区二区| 国产69久久精品成人| 亚洲精品国产精品久久清纯直播| 亚洲黄一区二区| 少妇激情综合网| 黑人巨大精品欧美一区二区| 欧美日韩综合视频网址| 国产精品一区专区欧美日韩| 亚洲欧美日韩天堂一区二区| 一本大道香蕉久在线播放29| 亚洲第一精品久久忘忧草社区| 久久中文字幕一区| 菠萝蜜影院一区二区免费| 国内精品久久久久久久久| 久久精品青青大伊人av| 欧美麻豆久久久久久中文| 中文日韩电影网站| 另类少妇人与禽zozz0性伦| 97超级碰碰碰久久久| 丝袜美腿亚洲一区二区| 亚洲国产中文字幕在线观看| 久久噜噜噜精品国产亚洲综合| 日韩av三级在线观看| 91网在线免费观看| 深夜福利一区二区| 亚洲精品狠狠操| 国产精品一区二区三区久久久| 欧美韩国理论所午夜片917电影| 亚洲欧美成人一区二区在线电影| 精品福利一区二区| 久久亚洲精品毛片| 日韩视频免费在线| 日韩三级成人av网| 日本欧美爱爱爱| 欧美高清videos高潮hd| 亚洲最新视频在线| 欧美丝袜美女中出在线| 久久精品视频亚洲| 欧美精品一二区| 成人精品网站在线观看| 黄色成人av网| 97碰在线观看| 久久久精品国产一区二区| 中文字幕亚洲无线码a| 亚洲国产成人精品一区二区| 国语自产精品视频在线看抢先版图片| 国产va免费精品高清在线观看| 精品亚洲一区二区三区四区五区| 国产亚洲综合久久| 亚洲欧美在线免费| 91精品久久久久久久久久另类| 国产亚洲欧美aaaa|