我有一个包含Excel XML Spreadsheet数据的字符串,我希望用户能够以.xls文件的形式下载。我目前正在使用以下代码,这在Chrome中运行良好。但是,由于我们的大多数用户仍然使用IE8,我们必须通过Chrome Frame运行该页面,此处下载似乎不起作用(没有任何反应)。
我们还在页面卸载时发出警告/提醒用户在关闭前保存,因此触发此事件的下载(如 - 这不再适用,但无论如何location.href都不起作用。 location.href = blob
)将无效。
var blob = new Blob([template]),
saveLink = document.createElement("a");
saveLink.href = window.URL.createObjectURL(blob);
saveLink.download = "EventDetails.xls";
saveLink.click();
编辑:
我也试过以下内容但没有取得任何成功:
window.open("data:application/vnd.ms-excel," + template, "_self");
和
var blob = new Blob([template], { type: "application/vnd.ms-excel" });
window.open(window.URL.createObjectURL(blob), "_self");
我想问题是Chrome Frame正在使用IE8的下载程序,因此会打开一个无法访问数据的新会话?
答案 0 :(得分:0)
我怀疑这将永远无法解决,因为Chrome Frame的进一步开发将于2014年1月停止(See blog),并且不再有人因此问题与ticket签名。所以我正在结束这个问题。