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

首頁 > 編程 > JavaScript > 正文

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

2019-11-20 22:30:01
字體:
來源:轉載
供稿:網友

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 == i + 1) {
                    pagestr += PagerBar.CurrentBarFormat.replace(regexp, i + 1);
                }
                else {
                    pagestr += PagerBar.PageBarFormat.replace(regexp, i + 1);
                }
                if (i >= PagerBar.PageCount - 1) {//當到達頁總數的時候挑出循環
                    break;
                }
            }
        }
        return pagestr;
    }
    function GetNextPageString() {//獲取下一頁鏈接
        if (PagerBar.NextBarFormat != "") {
            if (PagerBar.RecordCount > PagerBar.PageSize && PagerBar.PageIndex != PagerBar.PageCount) {//輸出下一頁HTMl
                return PagerBar.NextBarFormat.replace(regexp, PagerBar.PageIndex + 1);
            }
            else {
                return "";
            }
        }
        else {
            return "";
        }
    }
    function GetLastPageString() {//獲取尾頁鏈接
        if (PagerBar.LastBarFormat != "" && PagerBar.PageIndex != PagerBar.PageCount && PagerBar.RecordCount != 0) {
            return PagerBar.LastBarFormat.replace(regexp, PagerBar.PageCount);
        }
        else {
            return "";
        }
    }

    function GetFrontOtherPageString() {//獲取前其它頁鏈接
        if (PagerBar.OtherBarFormat != "") {
            if (PagerBar.PageIndex > PagerBar.ShowPagesCount / 2 + 1) {
                return PagerBar.OtherBarFormat.replace(regexp, PagerBar.PageIndex - PagerBar.ShowPagesCount <= 0 ? 1 : PagerBar.PageIndex - PagerBar.ShowPagesCount)
            }
            else {
                return "";
            }
        }
        else {
            return "";
        }
    }
    function GetAfterOtherPageString() {//獲取后其它頁鏈接
        if (PagerBar.OtherBarFormat != "") {
            if (PagerBar.PageIndex <= PagerBar.PageCount - PagerBar.ShowPagesCount / 2) {
                return PagerBar.OtherBarFormat.replace(regexp,
                PagerBar.PageIndex + PagerBar.ShowPagesCount >= PagerBar.PageCount ? PagerBar.PageCount : PagerBar.PageIndex + PagerBar.ShowPagesCount);
            }
            else {
                return "";
            }
        }
        else {
            return "";
        }
    }
    function GetCurrentRecordPageString() {//獲取當前記錄文本
        if (PagerBar.CurrentRecordBarFormat != "") {
            if (PagerBar.RecordCount == 0) {
                return "";
            }
            else {
                return PagerBar.CurrentRecordBarFormat.replace("{0}", (PagerBar.PageIndex - 1) * PagerBar.PageSize + 1).replace("{1}", PagerBar.PageIndex * PagerBar.PageSize > PagerBar.RecordCount ? PagerBar.RecordCount : PagerBar.PageIndex * PagerBar.PageSize);
            }
        }
        else return "";
    }
    function GetCurrentPageBarString() {//獲取當前頁記錄文本
        if (PagerBar.CurrentPageBarFormat != "") {
            return PagerBar.CurrentPageBarFormat.replace(regexp, PagerBar.PageIndex);
        }
        else return "";
    }
    this.GetString = function (pageindex) {//輸出HTML代碼(全部模式)
        if (pageindex != null && NumberRegex.test(pageindex)) {//如果傳入了頁索引則賦值
            this.PageIndex = parseInt(pageindex);
        }
        if (this.PageCount == 0) {//如果沒有計算過頁總數,則計算頁總數
            CalculatePageCount(this.PageSize, this.RecordCount);
        }
        var pagestr = "";
        if (this.IsShowCurrentPageString) {
            pagestr = GetCurrentPageBarString();
        }
        if (this.IsShowCurrentRecordString) {
            pagestr += GetCurrentRecordPageString();
        }
        if (this.IsShowFristString) {
            pagestr += GetFristPageString();
        }
        if (this.IsShowPreviouString) {
            pagestr += GetPreviouPageString();
        }
        if (this.IsShowOtherString) {
            pagestr += GetFrontOtherPageString();
        }
        if (this.IsShowPageString) {
            pagestr += GetPageString();
        }
        if (this.IsShowOtherString) {
            pagestr += GetAfterOtherPageString();
        }
        if (this.IsShowNextString) {
            pagestr += GetNextPageString();
        }
        if (this.IsShowLastString) {
            pagestr += GetLastPageString();
        }
        return pagestr;
    }
    this.GetNormalString = function (pageindex) {
        if (pageindex != null && NumberRegex.test(pageindex)) {//如果傳入了頁索引則賦值
            this.PageIndex = parseInt(pageindex);
        }
        if (this.PageCount == 0) {//如果沒有計算過頁總數,則計算頁總數
            CalculatePageCount(this.PageSize, this.RecordCount);
        }
        var pagestr = "";
        pagestr += GetFristPageString();
        pagestr += GetPreviouPageString();
        pagestr += GetPageString();
        pagestr += GetNextPageString();
        pagestr += GetLastPageString();
        return pagestr;
    }
    this.GetSimpleString = function (pageindex) {
        if (pageindex != null && NumberRegex.test(pageindex)) {//如果傳入了頁索引則賦值
            this.PageIndex = parseInt(pageindex);
        }
        if (this.PageCount == 0) {//如果沒有計算過頁總數,則計算頁總數
            CalculatePageCount(this.PageSize, this.RecordCount);
        }
        var pagestr = "";
        pagestr += GetPreviouPageString();
        pagestr += GetCurrentPageBarString();
        pagestr += GetNextPageString();
        return pagestr;
    }
}

使用示例:

暫無

內容中需要的知識點
分頁符《#PageLink》

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产视频久久久| 国产精品第100页| 精品视频在线导航| 国产91免费看片| 亚洲欧美日韩一区二区在线| 亚洲国产成人av在线| 亚洲国产欧美一区二区三区久久| 亚洲精品电影在线| 一区二区三区日韩在线| 国产精品嫩草视频| 国产精品视频999| 国产精品久久一区主播| 成人黄色片网站| 欧美风情在线观看| 91精品国产777在线观看| 7777精品久久久久久| 最近2019中文字幕第三页视频| 日本精品视频网站| 亚洲国产精品成人一区二区| 欧美大片免费观看在线观看网站推荐| 国产精品一区二区av影院萌芽| 国产精品情侣自拍| 色樱桃影院亚洲精品影院| 成人动漫网站在线观看| 一区二区三区天堂av| 国产视频精品va久久久久久| 欧美国产日韩中文字幕在线| 久久综合网hezyo| 亚洲成人aaa| 97在线观看视频国产| 国产欧美亚洲视频| 久久久www成人免费精品| 国产主播在线一区| 日韩av电影在线播放| 国产91精品黑色丝袜高跟鞋| 欧美成aaa人片免费看| 国产精品扒开腿做爽爽爽的视频| 国产精品羞羞答答| 久久精品99久久香蕉国产色戒| 欧美黑人视频一区| 国产区亚洲区欧美区| 日韩经典中文字幕在线观看| 亚洲成成品网站| 欧美成人免费在线观看| 欧美精品aaa| 国产精品香蕉在线观看| 久久伊人精品一区二区三区| 国产成人小视频在线观看| 欧美日韩高清区| 国产91亚洲精品| 国产精品免费看久久久香蕉| 88xx成人精品| 成人妇女免费播放久久久| 亚洲国产97在线精品一区| 国产精品一区久久久| 国产在线a不卡| 久久久精品久久| 91精品国产91久久久久久吃药| 国产91精品久久久久| 精品久久久久久久久久久久久久| 亚洲最新视频在线| 欧美电影在线观看网站| 欧美性猛交xxxx乱大交蜜桃| 国产精品久久久久久久天堂| 精品国产一区二区三区久久狼5月| 欧美精品久久久久久久久久| 亚洲日本aⅴ片在线观看香蕉| 日韩电影第一页| 国产精品网址在线| 欧美一区深夜视频| 亚洲国产成人久久| 亚洲免费人成在线视频观看| 欧美精品一区二区三区国产精品| 自拍亚洲一区欧美另类| 中文字幕自拍vr一区二区三区| 亚洲黄色在线观看| 亚洲国产精品va在线看黑人动漫| 欧美有码在线视频| 日韩电影免费观看在线| 久久精品视频中文字幕| 亚洲欧美中文日韩在线v日本| 正在播放国产一区| 欧美日韩成人在线视频| 日韩在线免费高清视频| 97在线观看视频| 91免费国产网站| 久久伊人精品一区二区三区| 成人国产精品久久久久久亚洲| 深夜成人在线观看| 日韩av123| 国产精品第七十二页| 欧美性少妇18aaaa视频| 欧美制服第一页| 欧美华人在线视频| 亚洲精品xxxx| 国产综合香蕉五月婷在线| 色婷婷综合久久久久中文字幕1| 国产婷婷97碰碰久久人人蜜臀| 国产精品一区久久| 日本一区二区三区四区视频| 青青草成人在线| 亚洲v日韩v综合v精品v| 亲爱的老师9免费观看全集电视剧| 欧美老少配视频| 国产精品久久久久久久久久久久久| 俺也去精品视频在线观看| 日韩美女视频中文字幕| 日本精品中文字幕| 亚洲成人av片| 国产精品自产拍在线观| 国产91精品久久久久久久| 欧美日韩国产中字| 自拍偷拍亚洲区| 亚洲精品98久久久久久中文字幕| 欧美日韩亚洲国产一区| 韩国日本不卡在线| 亚洲精品99久久久久| 欧美精品18videos性欧美| 欧美野外猛男的大粗鳮| 一区三区二区视频| 日韩电影免费观看中文字幕| 国产精品爽黄69| 久久91超碰青草是什么| 不卡av电影院| 欧美精品18videosex性欧美| 欧美激情视频一区二区三区不卡| 国产成人欧美在线观看| 国产91精品久久久久久久| 久久影院资源网| 亚洲精品国产suv| 亚洲人成在线一二| 96国产粉嫩美女| 日韩精品在线看| 亚洲国产精品99| 亚洲国产精品电影在线观看| 国产一区二区三区在线看| 成人免费视频网址| 伊是香蕉大人久久| 91精品视频网站| 国产精品电影久久久久电影网| 精品久久久久久久久久久久久久| 亚洲乱亚洲乱妇无码| 精品国产乱码久久久久久虫虫漫画| 欧美成人第一页| 欧美成人小视频| 久久精品视频在线播放| 久久精品国产精品亚洲| 国产精品午夜国产小视频| 91在线观看免费高清完整版在线观看| 亚洲肉体裸体xxxx137| 国产欧美最新羞羞视频在线观看| 亚洲福利小视频| 国产香蕉97碰碰久久人人| 欧美激情极品视频| 欧美成人午夜激情在线| 亚洲欧美激情视频| 色婷婷综合久久久久中文字幕1| 亚洲人午夜色婷婷| 国产91精品久久久久久久| 色狠狠av一区二区三区香蕉蜜桃| 久久资源免费视频| 久久成人精品电影| 亚洲小视频在线观看| 久久影院模特热|