开发者

Using ajax pagination (will_paginate) for multiple groups of the same model

I have gotten ajax pagination working using mislav-will_paginate with the js found here: https://github.com/mislav/will_paginate/wiki/Ajax-pagination but I have run into a situation that I am n开发者_运维百科ot sure how to handle. I have a number of groups (of the same model) and each group has a number of lists that are paginated. I cannot tell which group to load the lists for in the ajax pagination call. This is the code I am using:

function ajaxPagination(){
  var container = $(document.body)
  if (container) {
    container.observe('click', function(e) {
      var el = e.element();
      if (el.match('.pagination a')) {            
        new Ajax.Request(el.href, { method: 'get' })
        e.stop()
      }
    })
  }
}

<% @groups.each do |group| %>
   <% lists = group.lists.paginate(:page => params[:group_page], :per_page => 5) %>
   <% lists.each ....  %>
   <%= will_paginate lists, :params_name => "group_page" %>
<% end %>


You need to improve your JS to know which 'group' you're clicking.

$("#<%= group %>").html("<%= escape_javascript(render("group")) %>");

See: http://railscasts.com/episodes/174-pagination-with-ajax or read it at: http://asciicasts.com/episodes/174-pagination-with-ajax

$('.group').click(function(){
    $.ajax({
       type: "GET",
       url: "/group",
       data: { 'group' : $(this).attr('id') }
       success: function(data){
         alert( "Success" );
       }
     });
});
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜