我必须在IE中生成一个下载弹出窗口。我使用下面的代码。当我点击按钮时,它会打开一个新选项卡和另存为对话框
function SaveContents(element) {
if (document.execCommand) {
var oWin = window.open("about:blank","_blank");![enter image description here][1]
oWin.document.write(element);
oWin.document.close();
var success = oWin.document.execCommand('SaveAs', false, "FilteredReport.xls")
oWin.close();
}
}
如何在不打开新窗口或选项卡的情况下显示“另存为对话框”..
我也可以在不使用的情况下将字符串的数据写入excel
oWin.document.write(element);
因为它被写入打开的新选项卡或窗口
下图解释..
而不是IEwindow.document.execCommand('SaveAs', true, fileName + ".xls");
使用下面的代码片段
if (window.navigator.msSaveOrOpenBlob) {
blobObject = new Blob([CSV]);
window.navigator.msSaveOrOpenBlob(blobObject, 'Export.xls');
}
IEwindow.close();
包含ID为IframeForExcelExportonIE的iframe
<iframe id="IframeForExcelExportonIE" style="display: none"></iframe>
IframeForExcelExportonIE.document.open("txt/html", "replace");
IframeForExcelExportonIE.document.write(cln.innerHTML);
IframeForExcelExportonIE.document.close();
IframeForExcelExportonIE.focus();
sa = IframeForExcelExportonIE.document.execCommand("SaveAs", true, " test.xls");