我在提交 remote: true
表单后重新渲染部分内容,但我的问题是它似乎在完全完成表单的更新操作之前重新渲染部分内容。因此,它会在页面上呈现旧数据,并仅在完全刷新后(或当我再次提交表单时)显示更新的信息。有没有办法强制应用程序在一切完成后重新渲染部分,以便仅显示新信息?或者我在这里遗漏了一步?
update.js.erb:
$("#methods").html("<%= escape_javascript(render partial: 'methods') %>");
owner_controller.rb
respond_to :html, :js, :json
def update
if owner.update_attributes(owner_params)
respond_to do |format|
format.js
end
else
fail_update
end
end
最佳答案
$("#methods").html("<%= escape_javascript(render partial: 'methods', locals: {owner: @owner}) %>");
假设您在之前的操作中设置所有者,请将您设置的变量从所有者更改为@owner。
关于javascript - 通过表单保存模型后重新渲染 Rails 部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37813924/