我正在使用jquery ui模式對話框。在這個對話框中,我有兩個jquery ui選項卡,每個選項卡都包含一個帶有用will_paginate(rails)分頁的項目列表的div。
我有幾個問題:?
- 當我點擊分頁我的模式是關閉的頁面上,但我的網址/網頁= 2
- ,當我重新打開該模式我是上我的第一個標籤的第二頁,如果我點擊第二個標籤,我也在第二頁上,這是不想要的
Thx爲您提供幫助。
我正在使用jquery ui模式對話框。在這個對話框中,我有兩個jquery ui選項卡,每個選項卡都包含一個帶有用will_paginate(rails)分頁的項目列表的div。
我有幾個問題:?
Thx爲您提供幫助。
我假設你的模態對話框正在關閉,因爲你正在用新參數刷新頁面。下面是使用Ajax和will_paginate的官方說明,所以你不需要刷新頁面:
https://github.com/mislav/will_paginate/wiki/Ajax-pagination
您也可以嘗試RemoteLinkRenderer
解決方案,如果你不關心這些網頁的爬行。基本上,創建一個名爲remote_link_renderer.rb
,並把它幫手:
class RemoteLinkRenderer < WillPaginate::LinkRenderer
def prepare(collection, options, template)
@remote = options.delete(:remote) || {}
super
end
protected
def page_link(page, text, attributes = {})
@template.link_to_remote(text, {:url => url_for(page), :method => :get}.merge(@remote), attributes)
end
end
然後在您的視圖,請確保您的will_paginate調用有以下選項:
<%= will_paginate @items, :renderer => 'RemoteLinkRenderer' , :remote => { :update => 'items_div'} %>
其中@items
是無論你的分頁變量和items_div
是正在更新的dom元素的標識。
您可以谷歌的will_paginate remotelinkrenderer
欲瞭解更多信息。
至於你的第二次發行,問題是這兩個分頁使用相同的參數來跟蹤他們在哪個頁面上。您可以在調用will_paginate時在視圖中修復此問題,其中包括一個或兩個實例上的:param_name
選項,例如, :param_name=>:tab2_page
。這裏指定:http://rubydoc.info/gems/will_paginate/2.3.15/WillPaginate/ViewHelpers