使用rails和.js.erb发出AJAX请求(并将值附加到div),您如何防止呈现新布局?换句话说,保持在同一页没有去任何地方,只是追加从服务器的新鲜数据在一个div。没有重新加载相同的页面,没有重定向。Rails AJAX - 不重定向或渲染
目前我的控制器看起来像这样
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
,但我得到'Template is Missing'错误
请帮忙!!
请把你的js代码在这里 – RSB
什么是你的'update_shipping.html.erb'(或.js文件)是什么样子?控制器希望在您的操作后默认呈现此文件。理想情况下,它应该只包含要返回到AJAX函数以在当前页面上呈现的'div'。 – KappaNossi
$('#shipping_cell')。html('<%= j view_in_preferred_currency(@ order.shipping_option.price)%>'); @KappaNossi –