【发布时间】:2017-11-15 14:33:17
【问题描述】:
我想创建一个点击开始下载文件的超链接(通常显示在浏览器的左下角)。
我使用禁用重写的 HTML5 模式:
angular.module('mymodule', []).config(['$locationProvider', function($locationProvider) {
$locationProvider.html5Mode({enabled: true, rewriteLinks: false});
}
这是我的 HTML5 下载属性链接:
<ul class="dropdown-menu" id="download-formats">
<li><a href="/api/v1/rna/{{ rna.upi }}.fasta" download="{{ rna.upi }}.fasta">FASTA</a></li>
</ul>
不知何故,单击此链接根本没有任何效果(我使用的是最新的 Chrome)。应该是这样吗?
回答:所以问题是这个带有下载链接的标记包含在另一个元素中,如果没有填充 href 属性(就像 href 一样,使用angularjs 插值内容)。如果没有填充,它会调用preventDefault(),所以我无法运行 html5 下载操作。我必须在 javascript 中执行命令式下载。
【问题讨论】: