2010-10-06 61 views
0

我已经使用will_paginate插件实现了分页。select_tag,使用onchange将选定的值传递给控制器​​方法

我想要一个下拉列表,用户可以在其中显示每个“页面”上显示的记录数。这个想法是,一旦他们选择了一些东西,当前屏幕就会随着记录显示的调整数量而刷新。

我的代码没有触发刷新......我做错了什么?

下拉列表:

<%= select_tag :paginate_size, options_for_select([['Disp 5', 5],['Disp 10',10],['Disp: 20', 20]]), :onchange => remote_function(:url => {:action => :show_my_entries, :page_size => "this.options[this.selectedIndex].value"})%> 

在控制器show_my_entries功能:

@entries_paginate = Entry.paginate :page => params[:page], :order => 'title', :per_page => params[:page_size], :conditions => "publication_id = " + session[:publication_id].to_s 

回答

1

我认为你需要通过PARAMS到:使用show_my_entries:有,像这样:

<%= select_tag :paginate_size, options_for_select([['Disp 5', 5],['Disp 10',10],['Disp: 20', 20]]), :onchange => remote_function(:url => {:action => :show_my_entries }, :with => "'paginate_size='+value")%> 

注意remote_function的第二个参数。

+0

感谢您的回答! – nktokyo 2010-10-09 03:12:20

相关问题