var anchor = angular.element('<a/>');
anchor.attr({
href: 'data:attachment/csv;charset=utf-8,' + encodeURI(response.data),
target: '_blank',
download: 'Rates.csv'
})[0].click();
此 anchor 元素不适用于 Firefox 和 Internet Explorer,但适用于 Chrome。是因为我从未将元素添加到 DOM 中吗?我该如何解决这个问题?
这是从服务器获取费率并显示为下载附件。
更新:
var anchor = document.createElement('a');
anchor.href = 'data:attachment/csv;charset=utf-8,' + encodeURI(response.data);
anchor.target = '_blank';
anchor.download = 'Rates.csv';
document.body.appendChild(anchor);
anchor.click();
$timeout(function () {
anchor.remove();
}, 50);
将此添加到我的指令中,现在工作正常。
最佳答案
click()
适用于 Chrome。对于 Firefox,您可以尝试以下代码
var ev = document.createEvent("MouseEvents");
ev.initMouseEvent("click", true, false, self, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
// Fire event
anchor.dispatchEvent(ev);
关于javascript - anchor 击下载在 Firefox 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35469943/