zoukankan      html  css  js  c++  java
  • 在项目中如何利用分页插件呢?

    首先封装了分页代码作为一个插件,代码如下:

    (function ($) {
    
     
    
                jQuery.pageflip = {
    
     
    
                    paging: function (newPageIndex, recordCount) {
    
     
    
                        var obj = $.extend({}, $.pageflip.defaultVal, $.pageflip.defaults);
    
                        pageIndex = newPageIndex;
    
                        var _page = $(obj.PagePosition),
    
                                    show_indexStart,
    
                                    show_End,
    
                                    omit = [],
    
                                    txtPage = $("<input type='text' style='30px; margin-left:10px; margin-right:10px;'/>"),
    
                                    btnPage = $('<input type="button" value="Go"/>'),
    
                                    pageCount = Math.floor(recordCount / obj.pageSize) + (recordCount % obj.pageSize == 0 ? 0 : 1);
    
     
    
                        if (pageCount > 0) {
    
                            _page.show();
    
                        } else {
    
                            _page.hide();
    
                        }
    
     
    
                        _page.empty();
    
     
    
                        var _a = (function () {
    
                            var links = {};
    
                            $.each($.pageflip.defaultVal.pageLocalized, function (key, value) {
    
                                var _pageIndex = pageIndex;
    
                                switch (key) {
    
                                    case 'first':
    
                                        _pageIndex = 0;
    
                                        break;
    
                                    case 'prev':
    
                                        _pageIndex = _pageIndex - 1;
    
                                        break;
    
                                    case 'next':
    
                                        _pageIndex = _pageIndex + 1;
    
                                        break;
    
                                    case 'last':
    
                                        _pageIndex = pageCount;
    
                                        break;
    
                                    default:
    
                                        break;
    
                                }
    
                                links[key] = $("<a href='javascript:void(0);' class='jp-" + key + "'>" + value + "</a>").appendTo(_page).click(function () {
    
                                    pageIndex = _pageIndex;
    
                                    obj.PageCallback();
    
                                });
    
                            });
    
                            return links;
    
                        })();
    
     
    
                        //手动跳转
    
                        btnPage.click(function () {
    
                            var _pageindex = parseInt($.trim(txtPage.val()));
    
                            if (!!_pageindex && _pageindex <= pageCount) {
    
                                pageIndex = _pageindex;
    
     
    
                                obj.PageCallback();
    
                            }
    
                        });
    
     
    
                        _page.append(txtPage).append(btnPage);
    
     
    
                        if (pageIndex == 1) {
    
                            _a["first"].add(_a["prev"]).addClass("jp-disabled").unbind("click");
    
                        }
    
                        if (!pageCount || pageIndex == pageCount) {
    
                            _a["next"].add(_a["last"]).addClass("jp-disabled").unbind("click");
    
                        }
    
     
    
                        if (pageIndex <= 4) {
    
                            show_indexStart = 2;
    
                            show_End = 6;
    
                            omit.push(show_End);
    
                        } else if (pageIndex > pageCount - 4) {
    
                            show_indexStart = pageCount - 5;
    
                            show_End = pageCount - 1;
    
                            omit.push(show_indexStart - 1);
    
                        } else {
    
                            show_indexStart = pageIndex - 2;
    
                            show_End = pageIndex + 2;
    
                            omit.push(show_indexStart - 1);
    
                            omit.push(show_End);
    
                        }
    
     
    
                        for (var i = 1, length = pageCount; i <= length; i++) {
    
                            var _i = i,
    
                                    __a = $("<a href='javascript:void(0);'>" + i + "</a>").insertBefore(_page.find("a.jp-next")).click(function () {
    
                                        pageIndex = parseInt(this.innerHTML);
    
                                        obj.PageCallback();
    
                                    });
    
     
    
                            if (i == pageIndex) {
    
                                __a.addClass("jp-current").unbind("click");
    
                            }
    
     
    
                            if (i != 1 && i != length) {
    
                                if (i < show_indexStart || i > show_End) {
    
                                    __a.addClass("jp-hidden");
    
                                }
    
                                if ($.inArray(i, omit) > -1) {
    
                                    $("<span>...</span>").insertAfter(__a);
    
                                }
    
                            }
    
                        }
    
     
    
     
    
                    }
    
                };
    
     
    
                $.pageflip.defaultVal = {
    
                    pageSize: 15,
    
                    PageCallback: "",
    
                    PagePosition: "",
    
                    pageLocalized: {
    
                        first: "<<",
    
                        prev: "<",
    
                        next: ">",
    
                        last: ">>"
    
                    }
    
                };
    
            })(jQuery);

    在项目中应用说明:

    一:初始化选项

    $.pageflip.defaultVal = {
    
                    pageSize: 15,
    
                    PageCallback: "",
    
                    PagePosition: "",
    
                    pageLocalized: {
    
                        first: "<<",
    
                        prev: "<",
    
                        next: ">",
    
                        last: ">>"
    
                    }
    
                };

    二:取得$.pageflip.defaults.pageSize ,$.pageflip.defaults.pageIndex – 1

    三:调用paging函数,在加载列表的函数里调用$.pageflip.paging($.pageflip.defaults.pageIndex, data.TotalNum);

     

    data.TotalNum表示列表的总条数

     

     

  • 相关阅读:
    linux ftp启用和停用及vsftpd安装 ssh 启用和停用命令及ssh的安装
    linux 网络命令
    printf的使用
    Shell echo命令
    shell脚本之文件操作
    shell脚本之字符串运算的使用
    linux的计划任务操作
    系统操作有关的命令
    shell脚本之 operater.sh 算术运算符;比较运算符;布尔运算符;逻辑与或非运算符;字符串运算符的使用
    shell脚本的参数传递使用
  • 原文地址:https://www.cnblogs.com/laneyfu/p/4360261.html
Copyright © 2011-2022 走看看