我有一个表单,需要将 .csv 文件提交到服务器,然后将其中的单词附加到我页面中的 textarea 中。我正在使用 Remotipart 使用 AJAX 上传 .csv,但我无法让服务器响应中的 javascript 执行。以下是我的代码的相关部分:
表格:
=form_tag(upload_canvas_words_admin_page_widget_widget_instance_path(widget.page, widget),:method=>'post',:remote=>true,:multipart=>true,:class=>"upload_words_csv") do
= label_tag "Upload File"
= file_field_tag "file"
= submit_tag "Upload"
控制器:
def upload_canvas_words
@csv_text = params[:file].read
end
.js.haml 文件:
= remotipart_response do
- if remotipart_submitted?
alert('#{@csv_text}');
alert('!');
- else
alert('WHYYYYY?');
当我查看响应时,我看到 javascript 被包裹在一堆 html 中,我认为这与 iFrame 传输有关。但是 javascript 从未真正执行过。