当i + 1时,分页会中断

时间:2012-02-29 16:50:59

标签: jquery pagination

我正在使用一个名为pajinate的分页插件,我需要提供一个Show All选项,所以我将我的ajax调用的索引传递给“item_per_page”。一切都很好,但我需要在索引中加1,所以我得到了完整的结果。

当我将“item_per_page”设置为“i”时,它可以工作,当我将其设置为“i + 1”时,它不会。对我没有意义:

$.ajax({
    url: "search-by-department-621650415.json",
    cache: true,
    dataType : 'json',

    success : function(results) {
        var employeeData = [];
        var totalNum;
        var startNum = 9;   
        $.each(results.data, function(i, item){
            employeeData.push({
                departmentName: item.departnemtName,
                firstname: item.firstName,
                lastname: item.lastName,
                phonework: item.workPhone
            });

            totalNum = i; 
            //totalNum = i + 1; breaks when i do this!!
        });

        $('#employee-name-results').tmpl(employeeData).appendTo('#name-results-container');

        Pagination(startNum);

        $("a.showall").click(function() {
            Pagination(totalNum);
        });

    } 

});


function Pagination(itemsPerPage) {
    $('#paging_container-1').pajinate({         
        items_per_page : itemsPerPage,
        num_page_links_to_display : 8,
        abort_on_small_lists: true,
        nav_label_prev : '<img src="images/icons/icon_prev.png"  />',
        nav_label_next : '<img src="images/icons/icon_next.png"  />'
    });
    console.log(itemsPerPage);
}

4 个答案:

答案 0 :(得分:0)

尝试:

var totalNum = 0;

这将明确地将其设置为数字。

答案 1 :(得分:0)

尝试强制i为数字:totalNum = +i + 1;

Javascript可能会改为使用字符串。

答案 2 :(得分:0)

试试这个。

$("a.showall").click(function() {
      Pagination(results.data.length);
});

答案 3 :(得分:0)

在插件中找到了if语句:

if(options.abort_on_small_lists&amp;&amp; options.items_per_page&gt; = $ items.size())return $ page_container;

需要:

if(options.abort_on_small_lists&amp;&amp; options.items_per_page&gt; $ items.size())返回$ page_container;