同一页面中的两个jquery分页插件似乎不起作用

时间:2010-04-09 04:16:50

标签: jquery plugins pagination jquery-pagination

我使用jquery分页插件进行分页...如果有一个分页插件对我没有问题...但是如果有两个似乎工作但另一个似乎也没有...这里是我的代码,

<div id="PagerUp" class="pager">

</div><br /><br /><br />
    <div id="ResultsDiv">

</div>
<div id="PagerDown" class="pager">

</div>

我的jquery有,

<script type="text/javascript">
         var itemsPerPage = 5;
         $(document).ready(function() {
             getRecordspage(0, itemsPerPage);
             var maxvalues = $("#HfId").val();
             $(".pager").pagination(maxvalues, {
                 callback: getRecordspage,
                 current_page: 0,
                 items_per_page: itemsPerPage,
                 num_display_entries: 5,
                 next_text: 'Next',
                 prev_text: 'Prev',
                 num_edge_entries: 1
             });
         });

</script>

这是我得到的......

alt text http://img52.imageshack.us/img52/5618/pagerse.jpg

两者都有效,但查看pagerup所选页面为3PagerDown显示1 ....如何更改其他寻呼机上的一个寻呼机回调事件在jquery ....

修改 使用mef的想法似乎不起作用......

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript" src="jquery.js"></script>
    <link rel="Stylesheet" type="text/css" href="CSS/Main.css" />
      <script type="text/javascript" src="Javascript/jquery.pagination.js">
      </script>
    <script type="text/javascript">
        $(document).ready(function() {
            $(".pager").pagination(300, { callback: pagecallback,
                current_page: 0,
                items_per_page: 5,
                num_display_entries: 5,
                next_text: 'Next',
                prev_text: 'Prev',
                num_edge_entries: 1
            });
        });
    function pagecallback() {
        var paginationClone = $("#Pagination > *").clone(true);
        $("#Pagination2").empty();
        paginationClone.appendTo("#Pagination2");
    }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>

<div class="pager" id="pagination">
  <!-- the container for your first pagination area -->
</div>

<div id="results">
  <!-- the container where you show your results -->
</div>

<div class="pager" id="Pagination2">
  <!-- the container for your second pagination area -->
</div>
    </div>
    </form>
</body>
</html>

2 个答案:

答案 0 :(得分:12)

由于这似乎不受官方支持,因此这是一种解决方法(working demo)。

第1步 按如下方式创建HTML标记:

<div class="pagination" id="Pagination">
  <!-- the container for your first pagination area -->
</div>

<div id="results">
  <!-- the container where you show your results -->
</div>

<div class="pagination" id="Pagination2">
  <!-- the container for your second pagination area -->
</div>

第2步这个想法:
现在的想法是使用第一个分页div的分页插件像往常一样。但另外,我们希望每次页面更改时将第一个分页div的所有内容复制到第二个分页div。

第3步调整pageSelect-callback:
在回调函数的末尾添加以下行:

var paginationClone = $("#Pagination > *").clone(true);
$("#Pagination2").empty();
paginationClone.appendTo("#Pagination2");

withDataAndEvents调用中包含布尔参数(.clone)非常重要,否则您的分页副本将不会有任何点击事件。

现在,每次单击分页元素(无论是原始元素还是副本),页面都会更改,分页元素也会相应更新。

答案 1 :(得分:2)

可能这不是您希望的答案,但是有一个jQuery Pagination插件的功能请求,表明当前实现不支持在同一页面上有两个寻呼机:

http://plugins.jquery.com/node/11825