微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – IE 11中的FormData未定义

我有以下脚本从输入类型的文件获取文件数据:

var uploadfiles = $("#upFile").get(0);
var uploadedfiles = uploadfiles.files;

var fromdata = new FormData();
for (var i = 0; i < uploadedfiles.length; i++) {
    fromdata.append(uploadedfiles[i].name,uploadedfiles[i]);
}

// ajax code omitted that uploads file

这在我测试过的所有浏览器中都很有效,除了IE 11.除此之外它还不明白FormData()是什么?我现在已经在线阅读了很多不同的解决方法,但是没有一个可以工作,无论我什么都没做就能从输入中获取文件的细节.还有其他人有这个可以帮助吗?即使我尝试使用jQuery来获取对象,然后由于某种原因未定义’files’.

编辑:在线阅读更多,似乎可能是因为IE在提交表单之前不提供对输入的访问,但是我使用ajax上传文件,所以我无法真正提交它.

编辑2:我还应该提一下,在文件输入的更改事件中调用代码,不确定它是否有任何相关性,但最好提及它

解决方法

检查IE开发人员工具中的docmode之后,由于某种原因,它被恢复为9,在我的母版页上有一个旧版的X-UA-Compatible元标记我改为:

<Meta http-equiv="X-UA-Compatible" content="IE=edge">

FormData完全没有问题.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐