【发布时间】:2014-04-04 08:54:29
【问题描述】:
使用 rails 和 .js.erb 发出 AJAX 请求(并将值附加到 div),如何防止呈现新布局?换句话说,留在同一页面上不用去任何地方,只需将来自服务器的新数据附加到一个 div 中。无需重新加载同一页面,无需重定向。
目前我的控制器看起来像这样
def update_shipping
@order = Order.find(params[:id])
@order.shipping_option_id = params[:shipping_options]
@order.save!
respond_to do |format|
format.js
format.html
end
end
还有我的 zisss 形式:
<%= form_tag update_shipping_order_path(@order), method: :put, remote: true do %>
<%= select_tag 'shipping_options', @options_for_select, onchange: 'this.form.submit()' %>
<% end %>
我的路线看起来像这样:
resources :orders do
member do
put :update_shipping
end
end
但我收到“模板缺失”错误
请帮忙!!
【问题讨论】:
-
请把你的js代码贴在这里
-
您的
update_shipping.html.erb(或.js)是什么样的?控制器希望在您执行操作后默认呈现此文件。理想情况下,它应该只包含您想要返回到 AJAX 函数以在当前页面上呈现的div。 -
$('#shipping_cell').html(''); @KappaNossi
标签: ruby-on-rails ajax ruby-on-rails-3 forms