默认的是 首页 上一页 1,2,3,4  下一页 末页 现在要改成  首页 上一页  下拉列表 下一页 末页 
等于说是把 1.2.3.4  放在 下来列表中.
 
 看完之后发现时这段代码 控制页值的.
for (var page = startPoint; page <= endPoint; page++) {            var currentButton = $('<li class="page-number">' + (page) + '</li> ');
            //         
            page == pagenumber ? currentButton.addClass('pgCurrent') : currentButton.click(function() { buttonClickCallback(this.firstChild.data); });
            currentButton.appendTo($pager);        }
自己加的 的 select 控件不正确. 
 插件地址jquery.pager.js   jquery jquery那位高手有空 帮忙看下.谢谢了.
或者有类似能实现这个效果的插件.谢谢 .

解决方案 »

  1.   

        function renderpager(pagenumber, pagecount, buttonClickCallback) {        // setup $pager to hold render
            var $pager = $('<ul class="pages"></ul>');        // add in the previous and next buttons
            $pager.append(renderButton('first', pagenumber, pagecount, buttonClickCallback)).append(renderButton('prev', pagenumber, pagecount, buttonClickCallback));        // pager currently only handles 10 viewable pages ( could be easily parameterized, maybe in next version ) so handle edge cases
            var startPoint = 1;
            var endPoint = 9;        if (pagenumber > 4) {
                startPoint = pagenumber - 4;
                endPoint = pagenumber + 4;
            }        if (endPoint > pagecount) {
                startPoint = pagecount - 8;
                endPoint = pagecount;
            }        if (startPoint < 1) {
                startPoint = 1;
            }
           
            // loop thru visible pages and render buttons
            for (var page = startPoint; page <= endPoint; page++) {            var currentButton = $('<li class="page-number">' + (page) + '</li> ');
                //         
                page == pagenumber ? currentButton.addClass('pgCurrent') : currentButton.click(function() { buttonClickCallback(this.firstChild.data); });
                currentButton.appendTo($pager);        }        // render in the next and last buttons before returning the whole rendered control back.
            $pager.append(renderButton('next', pagenumber, pagecount, buttonClickCallback)).append(renderButton('last', pagenumber, pagecount, buttonClickCallback));
            //   document.write($pager);
            return $pager;
        } 这是中间的 一段代码.
      

  2.   

    我这边有一个实例,也是分页,不过不是pager的,http://down.chinaz.com/soft/24497.htm
      

  3.   

     首页 上一页 下拉列表 下一页 末页  不是这样的. 这个我有.修改感觉麻烦 就换  jquery-pager
      

  4.   


       function renderpager(pagenumber, pagecount, buttonClickCallback) {        // setup $pager to hold render
            var $pager = $('<ul class="pages"></ul>');        // add in the previous and next buttons
            $pager.append(renderButton('first', pagenumber, pagecount, buttonClickCallback)).append(renderButton('prev', pagenumber, pagecount, buttonClickCallback));        // pager currently only handles 10 viewable pages ( could be easily parameterized, maybe in next version ) so handle edge cases
            var startPoint = 1;
            var endPoint = 9;        if (pagenumber > 4) {
                startPoint = pagenumber - 4;
                endPoint = pagenumber + 4;
            }        if (endPoint > pagecount) {
                startPoint = pagecount - 8;
                endPoint = pagecount;
            }        if (startPoint < 1) {
                startPoint = 1;
            }        // loop thru visible pages and render buttons
            for (var page = startPoint; page <= endPoint; page++) {            var currentButton = $('<li class="page-number">' + (page) + '</li>');            page == pagenumber ? currentButton.addClass('pgCurrent') : currentButton.click(function() { buttonClickCallback(this.firstChild.data); });
                currentButton.appendTo($pager);
            }        // render in the next and last buttons before returning the whole rendered control back.
            $pager.append(renderButton('next', pagenumber, pagecount, buttonClickCallback)).append(renderButton('last', pagenumber, pagecount, buttonClickCallback));        return $pager;
        }    // renders and returns a 'specialized' button, ie 'next', 'previous' etc. rather than a page number button
        function renderButton(buttonLabel, pagenumber, pagecount, buttonClickCallback) {        var $Button = $('<li class="pgNext">' + buttonLabel + '</li>');        var destPage = 1;        // work out destination page for required button type
            switch (buttonLabel) {
                case "first":
                    destPage = 1;
                    break;
                case "prev":
                    destPage = pagenumber - 1;
                    break;
                case "next":
                    destPage = pagenumber + 1;
                    break;
                case "last":
                    destPage = pagecount;
                    break;
            }        // disable and 'grey' out buttons if not needed.
            if (buttonLabel == "first" || buttonLabel == "prev") {
                pagenumber <= 1 ? $Button.addClass('pgEmpty') : $Button.click(function() { buttonClickCallback(destPage); });
            }
            else {
                pagenumber >= pagecount ? $Button.addClass('pgEmpty') : $Button.click(function() { buttonClickCallback(destPage); });
            }        return $Button;
        }