0

在 jQuery 插件 jPaginate 中,子对象的数量始终返回由此代码确定的值 1(jPaginate.js 中的第 45-48 行):

//getting the amount of elements inside parent element
var number_of_items = obj.children().size();
//calculate the number of pages we are going to have
var number_of_pages = Math.ceil(number_of_items/show_per_page);

我在 document.ready 函数的标题中调用脚本:

$("#content").jPaginate({
items: 4,
pagination_class: "pagination",
minimize: true                    
});

我用 id="content" 将一个 div 包裹在我想要像这样分页的表行周围:

    <div id="content">
        <table class="stripeMe center box-shadow-inner">
            <?php foreach ($invoices as $invoice) { ?>
                <tr>
                    <td>
                        <a href='<?php echo $_SERVER['PHP_SELF']; ?>/retrieve?class=InvoiceLineItems&amp;id=<?php echo $invoice['invoice_id']; ?>'><?php echo $invoice['invoice_number']; ?></a>&nbsp;<?php echo $invoice['customer_name'] ?>&nbsp;<?php echo $invoice['invoice_date'] ?> 
                    </td>
                </tr>   
            <?php } ?>    
        </table>
    </div>

我得到的是一长页记录,分页选择器设置为“上一个”1“下一个”。我尽可能地检查、删除和替换了三倍的代码并调试了代码。我仍然无法确定为什么number_of_items设置为 1。

任何帮助表示赞赏。谢谢。

4

1 回答 1

0

答案是由于选择器。

var number_of_items = obj.children().size();

obj是您传递给插件的#content 。所以 obj.children() 只返回 obj 中的第一个孩子table。由于数组中只有一项,它的大小为 1。

于 2012-07-11T19:19:56.760 回答