2012-08-08 101 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中的數據。你打電話來獲取數據,但似乎沒有做任何事情與加載的數據。

相關問題