POST ajax已完成406不可接受

时间:2014-02-11 21:52:13

标签: jquery ruby-on-rails ajax multipartform-data

我遇到了一个奇怪的问题。 我不会加载一个xml文件并通过ajax解析它,并将其内容附加到页面上显示以供进一步批准。

在视图中我有:

<%= form_tag import_path, multipart: true, remote: true do %>
    <%= file_field_tag :file %>
    <%= submit_tag "load" %>
<% end %>

控制器:

  respond_to :js
  def import
    respond_to do |format|
      parsing stuff ....
      @result = parsed_corrections

      format.js {render "import"}
    end
  end

此外,我还有import.js.erb视图,只提供测试警报。 当我提交一个空表单时,它的工作正确(内容类型是text / javascript),但是如果我提交一个xml文件,则显示“Completed 406 Not Acceptable”,内容类型为text / html。

我猜这个问题与内容类型有关。 jquery_rails和jquery_ujs包含在布局中。

感谢您提供帮助。

1 个答案:

答案 0 :(得分:0)

你需要处理xml格式

respond_to do |format|
          format.html 
          format.xml  { parsing stuff.. }
        end