簡體   English   中英

Rails 4-使用Kaminari使用Java重定向到下一頁

[英]Rails 4 - Redirect to Next Page with Javascript using Kaminari

我目前正在使用Kaminari進行分頁,並且我知道link_to_next_page方法。 但是,我目前正在處理並提交表單 ,希望在分頁范圍內“鏈接到下一頁”。

換一種說法:

  1. 用戶單擊“提交”按鈕
  2. 表單通過:remote => true提交
  3. Javascript以編程方式將用戶定向到下一頁。

有點像: create.js.erb

  <% if @result %>
    <script type="text/javascript">
      window.location.href="<%= @user.next_page %>
    </script>
  <% end %>

我可以生成/確定下一頁是什么,然后通過javascript重定向用戶嗎?

謝謝!

最終解決方案:基於下面的Kieran幫助,這是我最終要做的事情:

<% if @result %>   
  <% unless @users.last_page? %>
  window.location.href="?page=<%=@users.current_page+1 %>"
  <% else %>
      window.location.href="completed"
<% end %>

這似乎對我來說很好。

您遇到的問題是Kaminari需要“范圍”才能正確確定當前頁面的下一頁:

https://github.com/amatsuda/kaminari/blob/bc51fd08f9e67b8338b421f6827d7d8e54c82deb/lib/kaminari/helpers/action_view_extension.rb#L64

由於您要提交到javascript,因此需要為此方法提供此范圍以使其起作用。 在控制器的create方法中,您將需要具有相同的代碼來查詢要在其上進行分頁的對象,然后讓Kaminari進行其余操作。

@users = User.order(:name).page params[:page]

您將需要確保表單也發送了params[:page]

然后,您可以執行以下操作:

  <% if @result && !@users.last_page? %>
    <script type="text/javascript">
      window.location.href="<%=  params.merge(param_name => (@users.current_page + 1)) %>"
    </script>
  <% end %>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM