2012-08-08 103 views
0

我有一个搜索页面,允许用户搜索许多不同的字段。点击搜索后,该页面默认每页显示10个条目,可以选择查看下一个10,或使用will_paginate选择一个页码。有一个下拉菜单,允许您选择用户每页看到多少条目。Ruby on Rails:每页帖子

我已经尝试了两段代码:

Results per page: <%= select_tag :per_page, options_for_select([10,20,50], :selected=>params[:per_page]), { :onchange => "this.form.submit();"} %></br> 

Results per page: <%= select_tag :per_page, options_for_select([10,20,50], :selected=>params[:per_page]), :onchange => "'#{request.query_string}&per_page=' + this.getValue()" %></br> 

当第一个下拉改为20例如,页面立即再次搜索,但显示结果20每页。

第二个下拉列表允许您选择每页编号的条目,但要更改视图,则必须重新单击搜索。

我想让我的代码更像第一个下拉菜单,但我认为重新搜索有点贵。有没有办法停止重新提交搜索,但改变显示?

在此先感谢

回答

1

如果更改每页显示的项目数量,重新查询无论如何都要完成(因为只有项目显示从数据库已加载)。如果您更改每页显示的项目,并且您位于第2页上,您会看到什么?项目10 - 60?因此,如果您每页更改项目,则几乎总是会切换到第一页,而且无论如何都需要重新查询。

第二:看来你想重新加载JavaScript中的数据。你打电话来获取数据,但似乎没有做任何事情与加载的数据。

相关问题