我修改了我的RoR应用程序,在创建项目后调用create.js.rjs。我想在创建项目后在页面中重新加载指定div,我该怎么做?
当我的div有这样的ruby对象时:
<div id="categoryList">
<% @categories.each do |category| %>
<%= content_tag(:dt, category.name, :class => "menu-table")%><%= link_to 'X', category, :confirm => 'Are you sure?', :method => :delete %>
<%category.products.each do |product| %>
<%= content_tag(:dd, product.title, :class => "menu-table")%><%= link_to 'X', product, :confirm => 'Are you sure?', :method => :delete %>
<% end %>
<% end %>
</div>
如何将ruby对象传递给它然后再次重新加载特定页面?
答案 0 :(得分:2)
您可以使用id标记来定位它。
例如在您的视图中
<div id="my-div"> Replace this content </div>
然后在你的rjs文件中
page.replace_html("my-div", "Your updated content");
当您使用Ajax时,我建议您为计划与每个id进行交互的每个div或元素进行交互,以便您可以从Javascript中定位它们。
祝你好运!如果您还需要其他任何信息,请告诉我,谢谢,
肯特