我正在提交一个带有 file_field 的 form_for。当表单与 post 一起提交时,控制器会响应一个 .js 文件,该文件将被执行。
file_field 是可选的。
当我上传文件时,js文件在一个新文档中打开(作为一个简单的文本文件)并且js没有被执行。当我不上传任何文件时,响应 div 会更新。我希望在响应 div 或独立于文件上传的失败消息中通知更新成功。
可能是出于某些安全原因这样做吗?对于希望能够做到这一点的人是否有一些解决方法?
大致,
形成部分 _action.html.erb:
<div id="response"></div>
<%= form_for ... :remote => true, :url => {..., :format => :js} do |f| %>
...
<%= f.file_field :name %>
<% end %>
控制器::动作
if not request.post?
render :partial => 'controller/action'
return
else
@response = "save was successful";
# renders the action.js.erb
end
action.js.erb:
$("#response").html("<%= @response %>");