我有一个包含以下代码的页面:
<div>
<%= render 'form' %>
</div>
<div id="item_container">
<%= render @item %>
</div>
其中form是“@item”的形式,“render @item”呈现代表“@item”的部分。表单使用remote :: true并使用AJAX提交。
在提交表单时,rails 3中最简单,最有效的方式是更新整个@item部分。
答案 0 :(得分:4)
在您的控制器操作中,您需要添加respond_to块
respond_to do |format|
format.html
format.js
end
您可以编写一个视图,直接在其中编写javascript代码(假设您的操作名称是&#39;更新&#39;)
<强> update.js.erb 强>
$('#item_container').html('<%= j render(@item) %>');
注意&#39; j&#39;逃避JS响应