0

我有一个带有 ajax 选项卡的页面,该选项卡在我的控制器中加载不同的操作以呈现具有不同内容的部分。

所以我的控制器的索引动作有两个远程:顶部的真实链接。Wich 工作正常,他们使用 respond_to js 适当地渲染相应的部分。

#comments_stream.js.erb and likes_stream.js.erb
$("#masonry-container").html("<%= escape_javascript render('activities/activites') %>");

问题是我也在对这些局部 kaminari 和无限滚动进行分页。所以我不想在我的分页触发时运行上面的 js.erb 文件中的代码,因为它只是替换(.html)我的内容,而不是像无限滚动脚本试图做的那样附加新内容(并且在我的其他页)。

#pagination
<%= paginate @activities, remote: true %>

所以,我真正的问题是如何使 .html("<%... 仅在单击选项卡中的链接时触发,而不是在触发分页时触发。

我尝试使用参数来定位远程操作,但无法使其正常工作。

 #original remote link
<%= link_to comments_stream_path, remote: true %>

#what I tried
<%= link_to comments_stream_path, remote: true, :item => 'comments_partial' %>

#comments.js.erb
<% if params[:item] == 'comments_partial' %>
  $("#masonry-container").html("<%= escape_javascript render('activities/activites') %>");
<% end %>

任何帮助将不胜感激!我已经搞砸了一段时间了...

4

1 回答 1

1

我认为您传递了错误的参数,请尝试:

<%= link_to comments_stream_path(:item => 'comments_partial'), remote: true %>
于 2013-06-07T04:04:38.147 回答