Ajax pagination links: Create pagination links with link_to_remote
August 16, 2006
Here is a method by mixonix to create pagination links by link_to_remote. Copy this code in your helpers/application_helper.rb
def ajax_pagination_links(paginator, options={})
options.merge!(ActionView::Helpers::PaginationHelper::DEFAULT_OPTIONS) {|key, old, new| old}
window_pages = paginator.current.window(options[:window_size]).pages
return if window_pages.length <= 1 unless
options[:link_to_current_page]
first, last = paginator.first, paginator.last
returning html = '' do
if options[:always_show_anchors] and not window_pages[0].first?
html << link_to_remote(first.number, :update => options[:update], :url => { options[:name] => first }.update(options[:params] ))
html << ' ... ' if window_pages[0].number - first.number > 1
html << ' '
end
window_pages.each do |page|
if paginator.current == page && !options[:link_to_current_page]
html << page.number.to_s
else
html << link_to_remote(page.number, :update => options[:update], :url => { options[:name] => page }.update(options[:params] ))
end
html << ' '
end
if options[:always_show_anchors] && !window_pages.last.last?
html << ' ... ' if last.number - window_pages[-1].number > 1
html << link_to_remote(paginator.last.number, :update => options[:update], :url => { options[:name] => last }.update( options[:params]))
end
end
end
and use following code for creating links
<%= ajax_pagination_links @pages, {:params => {:search_query => @params[:search_query]} } %>
Entry Filed under: RubyonRails, rails. .
7 Comments Add your own
Leave a Comment
Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackback this post | Subscribe to the comments via RSS Feed







1.
Arun | December 7, 2006 at 4:00 am
Plz let me know how to this code……
Any one can help me….
Arun
2.
Jabberwock | March 19, 2007 at 8:46 pm
Don’t forget to add “:method => :get” to the 3 link_to_remote functions if you’re using RESTful routes!
3.
Joseph | August 22, 2007 at 9:18 pm
Thanks for this. Big help!
4.
Zilyapop | September 25, 2007 at 8:55 am
bigsausagepizza lisa
bigsausagepizza lisa
5.
w | November 1, 2007 at 6:13 am
wow
6.
RezAOggg | November 9, 2007 at 10:13 am
cheep car rentals
cheep car rentals
7.
ada | March 3, 2009 at 1:39 pm
wow