pir*_*000 5 firefox google-chrome click angularjs
我正在使用AngularJS创建一个新标签,以便下载csv文件.我用来触发下载的代码下面.下载从Chrome开始,但不在Firefox中.你知道为什么会这样吗?
var element = angular.element('<a/>');
element.attr({
href: exportedString,
target: '_self',
download: 'test.csv'
})[0].click();
Run Code Online (Sandbox Code Playgroud)
编辑: Firefox需要一个现有的DOM
JS:
var linkElem = $("#link");
var element = angular.element(linkElem);
Run Code Online (Sandbox Code Playgroud)
HTML:
<a ng-hide=true id="link"></a>
Run Code Online (Sandbox Code Playgroud)
编辑2:在Chrome上,下载的文件名是"下载"而不是传递的值(本例中为"test.csv").有什么建议?
这里还有一个plunker
这是问题#377860中报告的Chrome 35中的错误.
请按照此答案了解更多详情
我更新了你的plunker解决方案.
基本上你需要使用它如下:
var element = document.createElement('a');
var blob = new Blob([$scope.exportContent], {
type: 'text/csv'
});
var url = URL.createObjectURL(blob);
element.href = url;
element.setAttribute('download', 'test.csv');
document.body.appendChild(element); //Append the element to work in firefox
element.click();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2797 次 |
| 最近记录: |