我有一个基本的rails应用程序,我非常依赖URL参数来显示或不显示逻辑。我能够使用UJS和link_to remote => true来对其进行公正处理,但当我单击这些链接时,显示的URL没有更新(这很有意义),其他部分也无法读取URL参数
例如,在index.html.erb中(在UJS之前,您可以看到它是如何工作的),
<div class="container-fluid">
<% if params[:category] %><div class="row-fluid span6">
<div class="span6">
<%= render :partial => "buglist" %>
</div>
<% end %>
<% if params[:id] %>
<div class="span6">
<%= render :partial => "bugdetails" %>
</div>
<% end %>
<% unless params[:category] or params[:id]%>
<%= render :partial => "landingpage" %>
<% end %>
</div>"top10",:action => "index",:=> catname) %>
这现在很好,但如果我将远程=>真添加到我的导航栏链接,它将工作左div,但#3 (登陆页)将始终显示,因为某些原因,它不会看到URL。而且,由于显示的URL总是相同的,所以我的所有link_to_unless(params.)不起作用。
与美国司法部:
index.html.erb
<div class="row-fluid span6" id="buglist"></div>
<div class="row-fluid span6" id="bugdetails"></div>
<div class="row-fluid id="landingpage"></div>index.js.erb
<% if params[:category] %>
$("#buglist").html("<%= escape_javascript(render(:partial => 'buglist')) %>");
<% end %>
<% if params[:id] %>
$("#bugdetails").html("<%= escape_javascript(render(:partial => 'bugdetails')) %>");
<% end %>
<% unless params[:category] or params[:id]%>
$("#landingpage").html("<%= escape_javascript(render(:partial => 'landingpage')) %>");
<% end %>发布于 2012-03-04 17:48:13
如果您正在将功能切换到ajax,而不执行页面重新加载,则可能希望将这些url参数作为会话变量。这样,您就可以按需要更新和显示它们。
https://stackoverflow.com/questions/9557196
复制相似问题