Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
理解使用javascript在分页中加载数据的概念时遇到的问题_Javascript_Backbone.js - Fatal编程技术网

理解使用javascript在分页中加载数据的概念时遇到的问题

理解使用javascript在分页中加载数据的概念时遇到的问题,javascript,backbone.js,Javascript,Backbone.js,我有很多数据,我想做一个分页,所以我能够加载每页5项,我想有10页。我试图从中获得灵感 主干.Paginator提供了两种主要分页方法的实现—服务器端分页(主干.Paginator.requestPager)和客户端分页(主干.Paginator.clientPager) 现在还不清楚你用的是哪一个,所以你能为你的收藏提供源代码吗 至于HTML模板,我建议您将其更改为以下内容: <ul class="pagination" id="paginationSelect">

我有很多数据,我想做一个分页,所以我能够加载每页5项,我想有10页。我试图从中获得灵感


主干.Paginator提供了两种主要分页方法的实现—服务器端分页(主干.Paginator.requestPager)和客户端分页(主干.Paginator.clientPager

现在还不清楚你用的是哪一个,所以你能为你的收藏提供源代码吗

至于HTML模板,我建议您将其更改为以下内容:

<ul class="pagination" id="paginationSelect">

        <li><a id="previous-page" class="page">Previous</a></li>

        <% for(var i = 0; i < 10 ; i++) { %>
                <li><a id="page" class="page"><%= i %></a></li>
        <% } %>

        <li><a id="next-page" class="page">Next</a></li>
  </ul>
一旦您从集合中调用requestPreviousPage()、requestNextPage()和goTo(pageNumber)等方法,Paginator将自动获取所需数据

顺便说一句,在插件的github示例文件夹:,有很好的使用主干.Paginator.requestPager主干.Paginator.clientPager的例子,所以您可以看看它们


只需注意一点:为了使示例有效,您需要将PaginatedCollection.js中的URL更改为
https://api.github.com/repos/backbone-paginator/backbone.paginator/issues?
因为示例中使用的URL不会返回任何数据。在客户端分页示例中,您还需要注释掉同一文件中的服务器api部分,这样它更像客户端分页。

每次单击都将不同的值传递给
this.collection.setPagination()
。如何从上次加载的页面继续?假设我想从第2页的6页开始(因为第1页已经加载了5页),我如何每次都这样做并保留索引?
event : {

"click #paginationSelect" : "fetchSelectedData"
}

onPageClick : function() {

            console.log("you clickedddd");

            this.collection.setPagination(1, 5);
            this.collection.setNrPages(5);

            this.collection.reset();
            this.$("#listMessages").empty(); //listMessage is a placeholder for showing data
            this.collection.fetch();
        },
<ul class="pagination" id="paginationSelect">

        <li><a id="previous-page" class="page">Previous</a></li>

        <% for(var i = 0; i < 10 ; i++) { %>
                <li><a id="page" class="page"><%= i %></a></li>
        <% } %>

        <li><a id="next-page" class="page">Next</a></li>
  </ul>
event : {"click #previous-page" : "previousPage",
         "click #next-page" : "nextPage",
         "click #page" : "page"},

previousPage : function(e) {
  this.collection.requestPreviousPage();
},

nextPage : function(e) {
  this.collection.requestNextPage();
},

page : function() {
  var page = $(e.target).text();
  this.collection.goTo(page);
},