如何通过jQuery或Javascript在IE9和11中显示“另存为”对话框

时间:2016-09-15 09:54:01

标签: javascript jquery internet-explorer

正如标题所提到的,我正在开发一个使用jQuery的网站。 由于用户需求的变化,我们现在需要让用户在他们只能查看之前下载文件。 我有需要下载的文件的位置(url)。 不幸的是,我没有任何运气,因为Internet Explorer正在......嗯...... Internet Explorer。

我的例子是下载.xml文件。它不会显示“另存为”对话框,而是在Internet Explorer中打开。另一方面,对于Word文件,下载是正确的。

我尝试使用<a target="_blank" href=" + targetUrl + ">的href,但没有帮助。 然后我尝试了document.execCommand('SaveAs',true,fileUrl);,这也没有帮助。

在线查看时,我发现没有提及任何可行的解决方案,这让我怀疑这是否可行。

所以我的问题是你是否可以强制IE9和11显示“另存为”对话框,无论用户设置如何。

2 个答案:

答案 0 :(得分:0)

为元素a添加ID。

var element = document.getElementById('a');
var oWin = window.open("yourlink", "_blank");
oWin.document.write('text');
oWin.document.close();
var success = oWin.document.execCommand('SaveAs', true, element.id)

答案 1 :(得分:0)

我不确定我理解你的问题。那么使用这个

<a href={file.downloadUrl} download={file.name}>{ file.name }</a>