繁体   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