我已经阅读了至少40-50个关于这个主题的帖子,但没有一个解决方案能够真正做到我想要的。 我指挥'我的WinCE 6.0板通过AJAX请求创建备份文件,然后我想将此文件保存到本地WS。
一旦AJAX请求完成,我就会调用以下javascript代码:
function DownloadControllerBackupDB(theResult)
{
if(typeof(theResult.Filename) != undefined)
{
var myFileLocation = '/data/' + theResult.Filename;
location.href = myFileLocation;
}
else
{
Error("Backup failed !");
}
}
我也试过这种方法(而不是' location.href'技术):
function SaveToDisk(fileURL, fileName)
{
var save = document.createElement('a');
save.href = fileURL;
save.target = '_blank';
save.download = fileName || 'unknown';
var event = document.createEvent('Event');
event.initEvent('click', true, true);
save.dispatchEvent(event);
(window.URL || window.webkitURL).revokeObjectURL(save.href);
}
两种'技术' endup @在chrome 50中的结果相同,该文件确实保存到专用于用户文件下载的本地文件夹中的磁盘...
我希望浏览器向我(带文件请求者)之前将此文件保存到磁盘,以便我可以决定放置它的位置。
我在某处读到你可以在chrome(可能还有其他浏览器)中设置一个选项,以便在保存文件之前强制要求它,但我认为要求用户这样做是不可接受的(由于操作的复杂性)。 / p>
无论如何,强迫'保存链接文件之前要询问的浏览器?
Thanxs
答案 0 :(得分:0)
let a = document.createElement('a');
a.href = 'https://www.google.ru/logos/doodles/2016/2016-hockey-world-championship-5085766322487296.2-hp.jpg';
a.download = true;
var event = document.createEvent('Event');
event.initEvent('click', true, true);
a.dispatchEvent(event)