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

首頁 > 編程 > JavaScript > 正文

jQuery前端分頁示例分享

2019-11-20 13:11:08
字體:
來源:轉載
供稿:網友

大家在作分頁時,多數是在后臺返回一個導航條的html字符串,其實在前端用js也很好實現。

調用pager方法,輸入參數,會返回一個導航條的html字符串。方法的內部比較簡單。

復制代碼 代碼如下:

/**
* pageSize,  每頁顯示數
* pageIndex, 當前頁數 
* pageCount  總頁數
* url  連接地址
* pager(10, 1, 5, 'Index')使用方法示例
*/
function pager(pageSize, pageIndex, pageCount, url) {
    var intPage = 7;  //數字顯示
    var intBeginPage = 0;//開始的頁數
    var intEndPage = 0;//結束的頁數
    var intCrossPage = parseInt(intPage / 2); //顯示的數字
    var strPage = "<div class='fr'><span class='pageinfo'>第 <font color='#FF0000'>" + pageIndex + "/" + pageCount + "</font> 頁 每頁 <font color='#FF0000'>" + pageSize + "</font> 條</span>";
    if (pageIndex > 1) {
        strPage = strPage + "<a class='pageNav' href='" + url + "?pageIndex=1&pageSize=" + pageSize + "'><span>首頁</span></a> ";
        strPage = strPage + "<a class='pageNav' href='" + url + "?pageIndex=" + (pageIndex - 1) + "&pageSize=" + pageSize + "'><span>上一頁</span></a> ";
    }
    if (pageCount > intPage) {//總頁數大于在頁面顯示的頁數
        if (pageIndex > pageCount - intCrossPage) {//當前頁數>總頁數-3
            intBeginPage = pageCount - intPage + 1;
            intEndPage = pageCount;
        }
        else {
            if (pageIndex <= intPage - intCrossPage) {
                intBeginPage = 1;
                intEndPage = intPage;
            }
            else {
                intBeginPage = pageIndex - intCrossPage;
                intEndPage = pageIndex + intCrossPage;
            }
        }
    } else {
        intBeginPage = 1;
        intEndPage = pageCount;
    }
    if (pageCount > 0) {
        for (var i = intBeginPage; i <= intEndPage; i++) {
            {
                if (i == pageIndex) {//當前頁
                    strPage = strPage + " <a class='current' href='javascript:void(0);'>" + i + "</a> ";
                }
                else {
                    strPage = strPage + " <a class='pageNav' href='" + url + "?pageIndex=" + i + "&pageSize=" + pageSize + "' title='第" + i + "頁'>" + i + "</a> ";
                }
            }
        }
    }
    if (pageIndex < pageCount) {
        strPage = strPage + "<a class='pageNav' href='" + url + "?pageIndex=" + (pageIndex + 1) + "&pageSize=" + pageSize + "'><span>下一頁</span></a> ";
        strPage = strPage + "<a class='pageNav' href='" + url + "?pageIndex=" + pageCount + "&pageSize=" + pageSize + "'><span>尾頁</span></a> ";
    }
    return strPage+"</div>";
}

試用這個方法試試

復制代碼
<!DOCTYPE html>
<html xmlns="<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <script src="Script/ajax-pager.js"></script>
    <script src="Script/jquery-1.8.0.js"></script>
    <script type="text/javascript">
        $(function () {
            loadData(1, 10);
            //分頁條點擊事件
            $(document.body).on('click', '.pageNav', function () {
                var pageSize = Number(getQueryString('pageSize', $(this).attr('href')));
                var pageIndex = Number(getQueryString('pageIndex', $(this).attr('href')));
                loadData(pageIndex, pageSize);
                return false;//不跳轉頁面
            });
        });
        //加載數據
        function loadData(pageIndex, pageSize) {
            $.getJSON('Content/CustomersData.txt', { pageIndex: pageIndex, pageSize: pageSize }, function (data) {
                var beginIndex = (pageIndex - 1) * pageSize;
                var endIndex = pageIndex * pageSize - 1;
                var tbodyHtml = '';
                for (var i = beginIndex; i < endIndex; i++) {
                    if (!data.Rows[i]) {
                        break;
                    }
                    var tbody = '<tr><td>{0}</td><td>{1}</td><td>{2}</td><td>{3}</td><td>{4}</td><td>{5}</td>';
                    tbody += '<td>{6}</td><td>{7}</td><td>{8}</td><td>{9}</td><td>{10}</td></tr>';
                    tbody = tbody.format(data.Rows[i].CustomerID, data.Rows[i].CompanyName, data.Rows[i].ContactName,
                        data.Rows[i].ContactTitle, data.Rows[i].Address, data.Rows[i].City,
                        data.Rows[i].Region ? data.Rows[i].Region : '', data.Rows[i].PostalCode, data.Rows[i].Country,
                        data.Rows[i].Phone, data.Rows[i].Fax ? data.Rows[i].Fax : '');
                    tbodyHtml += tbody;
                }
                $('#tb').find('tbody').first().html(tbodyHtml);
                var pageCount = parseInt((data.Total / pageSize)) + (data.Total % pageSize ? 1 : 0);
                $('#dvPager').html(pager(pageSize, pageIndex, pageCount, 'CustomersData.txt'));
            }
            );
        }
        //字符串格式化
        String.prototype.format = function (args) {
            var result = this;
            var reg;
            if (arguments.length > 0) {
                if (arguments.length == 1 && typeof (args) == "object") {
                    for (var key in args) {
                        if (args[key] !== undefined) {
                            reg = new RegExp("({" + key + "})", "g");
                            result = result.replace(reg, args[key]);
                        }
                    }
                } else {
                    for (var i = 0; i < arguments.length; i++) {
                        if (arguments[i] !== undefined) {
                            reg = new RegExp("({)" + i + "(})", "g");
                            result = result.replace(reg, arguments[i]);
                        }
                    }
                }
            }
            return result;
        };
        //獲取url參數
        function getQueryString(name, url) {
            var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
            url = url && url.indexOf('?') >= 0 ? url.substring(url.indexOf('?'), url.length) : window.location.search;
            var r = url.substr(1).match(reg);
            if (r != null) return unescape(r[2]); return null;
        }
    </script>
</head>
<body>
    <table id="tb" border="1" cellpadding="0" cellspacing="0">
        <thead>
            <tr>
                <th width="90px;">CustomerID</th>
                <th width="240px;">CompanyName</th>
                <th width="130px;">ContactName</th>
                <th width="140px;">ContactTitle</th>
                <th width="205px;">Address</th>
                <th width="90px;">City</th>
                <th width="50px;">Region</th>
                <th width="80px;">PostalCode</th>
                <th width="80px;">Country</th>
                <th width="95px;">Phone</th>
                <th width="95px;">Fax</th>
            </tr>
        </thead>
        <tbody></tbody>
    </table>
    <div id="dvPager"></div>
</body>
</html>
[/code]

看下效果

列有點多,我只截圖了部分,界面好丑,加點樣式,用bootstrap來美化下

使用Nuget安裝bootstrap

加上樣式后

雖說不是特別漂亮,但還是對得起觀眾吧。

代碼下載https://github.com/dengjianjun/JsPager

如果覺得對你有幫助,請點個贊,謝謝!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色哟哟网站入口亚洲精品| 免费不卡在线观看av| 日韩欧美精品免费在线| 欧美成人在线网站| 亚洲色图校园春色| 亚洲综合精品一区二区| 日本91av在线播放| 日韩在线观看免费高清完整版| 2019国产精品自在线拍国产不卡| 成人福利视频在线观看| 亚洲国产精品电影| 久久久久久久网站| 欧美大片大片在线播放| 国产精品免费电影| 欧美日韩成人网| 亚洲综合中文字幕在线| 久久国产精品久久久久| 色狠狠久久aa北条麻妃| 国产精品三级美女白浆呻吟| 精品亚洲一区二区三区在线观看| 黑人巨大精品欧美一区二区三区| 国产精品久久久亚洲| 欧美另类老肥妇| 日韩成人在线视频观看| 日韩av最新在线| 国产午夜精品麻豆| 久久69精品久久久久久国产越南| 欧美在线视频播放| 日韩激情片免费| 成人夜晚看av| 综合网日日天干夜夜久久| 欧美成人精品在线观看| 亚洲美女视频网站| 精品久久久久久中文字幕一区奶水| 91精品国产综合久久久久久蜜臀| 久久亚洲国产精品| 久久99精品久久久久久琪琪| 国产精品观看在线亚洲人成网| 亚洲激情视频在线| 丝袜情趣国产精品| 国产精品日韩精品| 国内精品久久久久久久| 国产精品十八以下禁看| 欧美午夜激情视频| 亚洲欧美日韩国产精品| 久久精品国产亚洲一区二区| 91精品视频网站| 91丝袜美腿美女视频网站| 欧美成人一区二区三区电影| 宅男66日本亚洲欧美视频| 久久亚洲国产精品成人av秋霞| 欧美另类在线观看| 成人免费视频a| 欧美成人免费视频| www.国产精品一二区| 亚洲va欧美va在线观看| 亚洲伊人久久大香线蕉av| 91免费在线视频| 美日韩精品视频免费看| 成人观看高清在线观看免费| 亚洲一区二区三区四区在线播放| 亚洲美女自拍视频| 中日韩午夜理伦电影免费| 少妇高潮久久久久久潘金莲| 日韩在线免费高清视频| 欧美另类69精品久久久久9999| 97香蕉久久夜色精品国产| 中文字幕亚洲天堂| 日韩中文第一页| 亚洲电影免费在线观看| 自拍偷拍亚洲在线| 欧美激情视频一区二区三区不卡| 亚洲成人三级在线| 97视频在线观看视频免费视频| 精品久久久久久久大神国产| 久久久久久久999精品视频| 久久精品国产一区| 狠狠久久五月精品中文字幕| 国产精品九九久久久久久久| 国产精品都在这里| 精品香蕉在线观看视频一| 亚洲女人初尝黑人巨大| 日韩免费av在线| 久久久久久91香蕉国产| www国产亚洲精品久久网站| 日韩精品日韩在线观看| 亚洲人成网站777色婷婷| 久久久久久久久91| 亚洲国产古装精品网站| 欧美极品在线播放| 国产在线一区二区三区| 日韩国产精品亚洲а∨天堂免| 国产日韩在线一区| 久久久久一本一区二区青青蜜月| 亚洲精品视频二区| 国产精品视频地址| 91精品久久久久久久久久另类| 成人免费xxxxx在线观看| 欧美精品成人91久久久久久久| 久久精品色欧美aⅴ一区二区| 欧美又大粗又爽又黄大片视频| 视频在线观看一区二区| 国产精品久久久久久久久免费看| 亚洲美女www午夜| 日韩欧美在线观看视频| 日韩av中文字幕在线播放| 国内成人精品一区| 欧美重口另类videos人妖| 久久91亚洲人成电影网站| 国产国语刺激对白av不卡| 精品亚洲永久免费精品| 亚洲色图色老头| 国产一区二区黄| 欧美一区二区三区艳史| 欧美极品少妇xxxxⅹ喷水| 成人在线一区二区| 国产视频亚洲精品| 国产精品91在线| 96sao精品视频在线观看| 亚洲国产成人精品电影| 日本一区二区在线免费播放| 久久国产精品久久精品| 欧美电影免费观看电视剧大全| 日韩中文字幕视频在线观看| 久久久久久久久久久网站| 亚洲欧美资源在线| 欧美日韩国产一区中文午夜| 亚洲国产精品va在线| 亚州av一区二区| 欧美国产日本高清在线| 久久夜色精品亚洲噜噜国产mv| 国产欧美最新羞羞视频在线观看| 久国内精品在线| www.欧美免费| 欧美成人精品一区二区| 日韩a**中文字幕| 国产91在线播放精品91| 7777精品久久久久久| 日韩av日韩在线观看| 亚洲男人天堂网站| 精品电影在线观看| 日韩亚洲欧美成人| 亚洲男人av在线| 日本a级片电影一区二区| 久久久久www| 亚洲美女又黄又爽在线观看| 欧美亚洲视频一区二区| 97在线视频精品| 欧美另类极品videosbest最新版本| 国产精自产拍久久久久久蜜| 波霸ol色综合久久| 欧美性生交大片免网| 久久99视频精品| 青草青草久热精品视频在线网站| 91精品综合久久久久久五月天| 国产精品99久久久久久人| 狠狠色狠狠色综合日日五| 久久久国产一区二区三区| 国产精品高清免费在线观看| 成人国产精品一区二区| 国产亚洲精品久久久久久牛牛| 精品亚洲一区二区三区在线观看| 成人性教育视频在线观看| 成人激情视频在线观看|