【发布时间】:2011-11-16 11:47:12
【问题描述】:
我正在尝试通过 jQuery.Form 插件提交带有 file 字段的表单,代码如下:
$('form').ajaxSubmit({
url: "/path",
dataType: "json",
contentType: "multipart/form-data"
...
然后服务器返回 json 作为响应。在除 IE 之外的所有浏览器中都能正常工作,它会尝试将响应下载为文件。如果我从表单中删除文件字段,它也可以正常工作。
我在这里和 Google 中看到了各种解决方案,基本上尝试了所描述的几乎所有方法,包括通过 jQuery 为表单设置 enctype,但没有成功。
非常欢迎任何建议。
【问题讨论】:
-
您的页面似乎正在重定向。请您发布更多您的解决方案吗?
-
它没有重定向。我的 Rails 控制器呈现 json(当我将该文件保存在 IE 中时 - 我确切地看到返回的 json 中应该包含什么)。
-
遇到了完全相同的问题,返回“text/plain”内容类型似乎可行。 $.parseJSON 在 Chrome 中也能正常工作,但在 IE 中添加了
标签。替换
标签后一切正常。
标签: json ajax internet-explorer multipartform-data jqueryform