【发布时间】:2017-01-23 15:52:29
【问题描述】:
我用JS为IE9创建了新的下载功能,但它不起作用。
descargarArchivo : function (url, idlote) {
var str = window.location.href+"/"+url;
str = str.replace("form.do/", "");
// Le da nombre del fichero que se va a descargar
var filename = 'factura_'+idlote;
xhr= new XMLHttpRequest();
xhr.responseType = 'blob';
xhr.onload = function() {
var a = document.createElement('a');
a.href = window.URL.createObjectURL(xhr.response);
a.download = filename; // Set the file name.
a.style.display = 'none';
document.body.appendChild(a);
a.click();
delete a;
}
}
};
xhr.open('GET', str);
xhr.send();
}
我读到,在 IE9 中没有 Blob 类型,所以xhr.response 返回未定义。我该如何解决?
【问题讨论】:
-
您是否在 stackoverflow 上搜索过解决方案,似乎已经有人问过这个问题? IE9 Blob Polyfill
-
是的,但是我有很多问题没有答案。
-
你不能使用 Ajax 代替提交表单并让服务器设置下载标题。
-
你应该为你的问题添加更多的精确度。您的文件始终是 PDF 格式吗?
-
没有。我的文件是 html 或 xml。
标签: javascript internet-explorer internet-explorer-9