萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> JS分頁控件 可用於無刷新分頁

JS分頁控件 可用於無刷新分頁

今天無意看到了這個分頁控件,不過使用方法不是很清楚沒有研究,。大家可以自行研究,裡面的函數寫法倒是不錯,需要內容的結合  

JS分頁控件,可用於無刷新分頁

復制代碼 代碼如下:
function PagerBar(recordcount, pagesize, pageindex, showpagecount) {
    var NumberRegex = new RegExp(/^d+$/);
    this.PageIndex = 1; //頁索引,當前頁
    if (pageindex != null && NumberRegex.test(pageindex)) this.PageIndex = parseInt(pageindex);
    this.PageSize = 10; //頁面大小
    if (pagesize != null && NumberRegex.test(pagesize)) this.PageSize = parseInt(pagesize);
    this.RecordCount = 0;
    if (recordcount != null && NumberRegex.test(recordcount)) this.RecordCount = parseInt(recordcount); //記錄總數
    this.PageCount = 0;  //頁總數
    var PagerBar = this;
    function CalculatePageCount(_pagesize, _recordcount) {//計算總頁數
        if (_pagesize != null && NumberRegex.test(_pagesize)) PagerBar.PageSize = parseInt(_pagesize);
        if (_recordcount != null && NumberRegex.test(_recordcount)) PagerBar.RecordCount = parseInt(_recordcount);
        else PagerBar.RecordCount = 0;
        if (PagerBar.RecordCount % PagerBar.PageSize == 0) {//計算總也頁數
            PagerBar.PageCount = parseInt(PagerBar.RecordCount / PagerBar.PageSize);
        }
        else {
            PagerBar.PageCount = parseInt(PagerBar.RecordCount / PagerBar.PageSize) + 1;
        }
    }
    if (this.RecordCount != 0) {//如果傳入了記錄總數則計算總頁數
        CalculatePageCount(this.PageSize, this.RecordCount);
    }
    this.ReplaceString = "《#PageLink》"; //替換頁數的文本,注:不可以有正則表達式中的符號
    this.ShowPagesCount = 5; //顯示頁數量
    if (showpagecount != null && NumberRegex.test(showpagecount.toString())) this.ShowPagesCount = parseInt(showpagecount);
    this.PreviouBarFormat = ""; //上一頁顯示文本格式
    this.IsShowPreviouString = true; //是否顯示上一頁
    this.NextBarFormat = ""; //下一頁顯示文本格式
    this.IsShowNextString = true; //是否顯示下一頁
    this.PageBarFormat = ""; //頁面連接顯示文本格式
    this.CurrentBarFormat = ""; //當前頁顯示文本格式
    this.IsShowPageString = true; //是否顯示頁索引
    this.FristBarFormat = ""; //首頁鏈接顯示文本格式
    this.IsShowFristString = true; //是否顯示首頁
    this.LastBarFormat = ""; //尾頁顯示文本格式
    this.IsShowLastString = true; //是否顯示尾頁
    this.CurrentRecordBarFormat = "當前記錄{0}-{1}"; //當前記錄顯示文本格式
    this.IsShowCurrentRecordString = true; //是否顯示當前記錄
    this.CurrentPageBarFormat = "當前第" + this.ReplaceString + "頁,共" + (this.PageCount == 0 ? 1 : this.PageCount) + "頁"; //當前頁文字說明文本格式
    this.IsShowCurrentPageString = true; //是否顯示當前頁文字說明文本
    this.OtherBarFormat = ""; //其他也顯示文本
    this.IsShowOtherString = true; //是否顯示其它頁文本
    var regexp = new RegExp(this.ReplaceString, "g"); //替換頁數文本正則表達式
    function GetFristPageString() {//獲取首頁文本
        if (PagerBar.FristBarFormat != "" && PagerBar.PageIndex != 1) {
            return PagerBar.FristBarFormat.replace(regexp, 1);
        }
        else {
            return "";
        }
    }
    function GetPreviouPageString() { //獲取上一頁文本
        if (PagerBar.PreviouBarFormat != "") {
            if (PagerBar.RecordCount > PagerBar.PageSize && PagerBar.PageIndex != 1) {//上一頁HTML輸出
                return PagerBar.PreviouBarFormat.replace(regexp, PagerBar.PageIndex - 1);
            }
            else {
                return "";
            }
        }
        else {
            return "";
        }
    }
    function GetPageString() {//獲取中間頁數鏈接
        var pagestr = "";
        if (PagerBar.CurrentBarFormat != "" && PagerBar.PageBarFormat != "") {
            var ShowPageFirest = PagerBar.PageIndex - parseInt(PagerBar.ShowPagesCount / 2 + 1) < 0 ? 0 : PagerBar.PageIndex - parseInt(PagerBar.ShowPagesCount / 2 + 1); //計算顯示頁數的其實頁數
            if (PagerBar.PageCount < PagerBar.ShowPagesCount) {//當也總數小於顯示頁數量
                ShowPageFirest = 0;
            }
            else {
                if (PagerBar.PageIndex > (PagerBar.PageCount - parseInt(PagerBar.ShowPagesCount / 2 + 1))) {//當頁總數在後幾頁顯示
                    ShowPageFirest = PagerBar.PageCount - PagerBar.ShowPagesCount;
                }
            }
            for (var i = ShowPageFirest; i < ShowPageFirest + PagerBar.ShowPagesCount; i++) {//循環出書頁數文本
                if (PagerBar.PageIndex
copyright © 萬盛學電腦網 all rights reserved