java web js完美分頁,只需一個div
java web js完美分頁 前後台要結合!個人原版封裝
js
/**分頁***///initfunction pageFn(_url,_param){ //init sendReq(_url,_param); //首頁// $("#_firstPage").click(function(){ //var param=getParam(); // param.mPageIndex=1;// sendReq(_url,param);// }); //尾頁// $("#_lastPage").click(function(){// // var param=getParam();// var lastPageVar= $("#_sizePage").html();// param.mPageIndex=parseInt(lastPageVar,10);// sendReq(_url,param);// }); //上一頁// $("#_pageUp").click(function(){//// var param=getParam();// var currentPageVar=$("#_currentPage").html();// param.mPageIndex=parseInt(currentPageVar,10)-1;// sendReq(_url,param);// // }); //下一頁// $("#_nextPage").click(function(){//// var param=getParam();// //當前頁// var currentPageVar=$("#_currentPage").html();// param.mPageIndex=parseInt(currentPageVar,10)+1;// sendReq(_url,param);// // }); //跳轉// $("#_jumpPage").click(function(){// var jumpPageVar=$("#jumpPageText").val();// // if(checkStr(jumpPageVar))// {// alert("跳轉頁請輸入有效數字!");// return;// }// // var param=getParam();// param.mPageIndex=jumpPageVar;// sendReq(_url,param);// }); }//點擊function clickNumFn(i,url){ var param=getParam(); param.mPageIndex=i; sendReq(url,param);}function pagecClickEnv(url,P){var param=getParam();//當前頁var currentPageVar=$("#_currentPage").html(); if(P=="N"){ param.mPageIndex=parseInt(currentPageVar,10)+1; }else if(P=="U"){ param.mPageIndex=parseInt(currentPageVar,10)-1;}else if(P=="L"){ var lastPageVar= $("#_sizePage").html(); param.mPageIndex=parseInt(lastPageVar,10);}else if(P=="T"){ param.mPageIndex=1;}else if(P=="J"){var jumpPageVar=$("#jumpPageText").val(); if(checkStr(jumpPageVar)) { alert("跳轉頁請輸入有效數字!"); return; } var param=getParam(); param.mPageIndex=jumpPageVar;} sendReq(url,param);}/** * 發送請求 * **/function sendReq(_url,obj){ $.post(_url,obj,function(returnDatas,status) { if(status=="success") { var jsonData=JSON.stringify(returnDatas); eval('callbak_page('+jsonData+')');//分頁資訊var pageinfoHTML = "共 " + returnDatas.mRecords+ "條 第"+ returnDatas.mCurrentPage + "/"+ returnDatas.mPages + "頁";//$("#_pageInfos").html(pageinfoHTML);//頁碼顯示var paginationNum=""+pageinfoHTML+"首頁 "; paginationNum+="< "; for(var i=returnDatas.startNo;i<(returnDatas.startNo+returnDatas.showNum);i++) { if(returnDatas.mPages
/****分頁****/.pagination{padding:20px 0;width:888px;margin:0 auto;color:#adadad;font-size:14px;font-family:"宋體";}.pagination a,.pagination span{padding:6px 10px;color:#adadad;display:inline-block;margin-left:3px;background:#fff;}.pagination .pageSelected,.pagination .current{background:#468FCB;color:#fff;text-decoration:none;cursor: pointer;}.pagination .pageFl{color:#DCDCDC !important; background:#fff !important;}.pagination span,.pagination a{ vertical-align:middle}.pagination a{font-family:Arial;}.pagination span{font-weight:bold;}
<script src="${pagecontext.request.contextpath}/audit/js/util/page.js" type="text/javascript"></script>
後台
package com.youboy.crm.dto.pager;public class Query {private int mPageIndex;private int mPageSize = 20;private boolean needPage = true;public Query() {super();}public Query(int mPageIndex, int mPageSize) {this.mPageIndex = mPageIndex;this.mPageSize = mPageSize;}public int getmPageIndex() {return mPageIndex > 0 ? mPageIndex : 1;}public void setmPageIndex(int mPageIndex) {this.mPageIndex = mPageIndex;}public int getmPageSize() {return mPageSize > 0 ? mPageSize : 0;}public void setmPageSize(int mPageSize) {this.mPageSize = mPageSize;}public int getmStartRow() {if (mPageIndex <= 0) {return 0;}return (mPageIndex - 1) * mPageSize;}public boolean isNeedPage() {return needPage;}public void setNeedPage(boolean needPage) {this.needPage = needPage;}@Overridepublic String toString() {return "Query [mPageIndex=" + mPageIndex + ", mPageSize=" + mPageSize+ ", needPage=" + needPage + "]";}}
package com.youboy.crm.dto.pager;import java.util.List;public class QueryResult {private int mPages; // 總頁數private long mRecords;// 總記錄數private List mItems;private int mCurrentPage = 1;// 當前頁private int startNo;// 起始號private int showNum = 10;// 顯示號的數量public int getmPages() {return mPages;}public void setmPages(int mPages) {this.mPages = mPages;}// 計算總頁數public void setmPages(long mRecords, long mpageSize) {this.mRecords = mRecords;if (mRecords <= 0) {this.mPages = 1;return;}if (mRecords <= mpageSize) {this.mPages = 1;return;}long totalPages = mRecords / mpageSize;this.mPages += (totalPages + (mRecords % mpageSize == 0 ? 0 : 1));}public long getmRecords() {return mRecords;}public void setmRecords(long mRecords) {this.mRecords = mRecords;}public List getmItems() {return mItems;}public void setmItems(List mItems) {this.mItems = mItems;}public int getmCurrentPage() {if (mCurrentPage <= 0) {mCurrentPage = 1;}if (this.getmPages() < mCurrentPage) // 如果當前頁大於資料頁{mCurrentPage = this.getmPages();}return mCurrentPage;}public void setmCurrentPage(int mCurrentPage) {this.mCurrentPage = mCurrentPage;}public int getStartNo() {if (startNo <= 0) {return 1;}return startNo;}public static int getStartNo2(int pages, int showNum, int cIndex) {// 根據當前頁計算起如行if (pages < cIndex) {// System.out.println("cget"+getmPages());cIndex = pages;} else if (cIndex <= 0) {// cIndex=1;}if (cIndex % showNum == 0) {// 當前頁-顯示的行數// System.out.println(cIndex-showNum+1);return cIndex - showNum + 1;} else {// 如果當前頁小於起始行if (cIndex < showNum) {return 1;} else {// 當前頁-餘數(當前面和顯示的行數)return cIndex - (cIndex % showNum)+1;}}}public void setStartNo(int startNo) { this.startNo=startNo;// System.out.println("cIndex:"+cIndex);// System.out.println(showNum);// System.out.println(startNo);// 根椐起始行》》》 當前頁%顯示的數量==是否翻頁// if (getmCurrentPage() % showNum == 1) {// if (getmPages() <= startNo) {// this.startNo = getmPages() - showNum;// } else {// this.startNo = getmCurrentPage();//+ 1;// }//// } else if (getmCurrentPage() % showNum == 0) {// this.startNo = getmCurrentPage() - showNum;// } else {// this.startNo = startNo;// }// if (startNo <= 0||this.startNo<=0) {// this.startNo = 1;// }}public int getShowNum() {return showNum;}public void setShowNum(int showNum) {this.showNum = showNum;}@Overridepublic String toString() {return "QueryResult [mPages=" + mPages + ", mRecords=" + mRecords+ ", mItems=" + mItems + ", mCurrentPage=" + mCurrentPage+ ", startNo=" + startNo + ", showNum=" + showNum + "]";}public static void main(String[] args) {int s = 5;int index = 19;System.out.println(index % s);if (index % s == 0) {// 當前頁-顯示的行數System.out.println(index - s + 1);} else {// 如果當前頁小於起始行if (index < s) {System.out.println(1);} else {// 當前頁-餘數(當前面和顯示的行數)System.out.println("f:" + (index - (index % s)+1));}}}}