简体   繁体   中英

How to prevent execCommand('SaveAs', from opening new tab or window

I have to generate a download pop up in IE. Iam using the below code. when i click on buttton it opens a new tab and the Save as Dialogue box

 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();

            }

}

How can i make the Save as Dialogue box appear with out opening new window or tab..

Also can i write data of a string to excel with out using

oWin.document.write(element);

beacuse its getting written to the new tab or window that opens

Below image explains..

在此处输入图片说明

Instead of IEwindow.document.execCommand('SaveAs', true, fileName + ".xls"); use below snippet

if (window.navigator.msSaveOrOpenBlob) {
     blobObject = new Blob([CSV]);
     window.navigator.msSaveOrOpenBlob(blobObject, 'Export.xls');
 }
IEwindow.close();

include an iframe with ID IframeForExcelExportonIE

<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");

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM