我使用JS for 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
返回undefined。我该如何解决?
答案 0 :(得分:0)
看看这个答案:https://stackoverflow.com/a/1926163/2435443
他使用注入的VBScript (ActiveXObject)将字节字符串转换为二进制数组,这是一种没有对象定义的Blob'仿真'。看起来很快&的鲁棒性。