a标签的href 和click事件并存,实现下载文件

6 篇文章 0 订阅

前端实现文件自动下载

先说下业务逻辑,要导出查询某个用户的聊天内容纪录,输入查询条件,点击导出按钮,后台返回文件的路径,然后自动下载下来。
其实很简单,这次利用H5新属性 a标签的download属性 <a href="文件路劲" download="生成文件的名称"></a>
其中产生的问题是: 通过ajax请求返回路径赋值给a标签的href属性,然后用js实现click事件,去触发a标签,但是 a标签的直接 click事件不会出发, ! 后来发现 要触发a标签的click事件,不能直接绑定a标签,要绑定在a标签的内部的元素里,所以在a标签里加了个标签来实现a标签的点击
给一个最简化的列子把:
<a id="downA" href="" download><span id="downFile"></span></a>

$.post('url...',data,function(res){
    $("#downA").attr("href",res);
    $("#downFile").click();
});

这样才实现!
错误示范:

$.post('url...',data,function(res){
    $("#downA").attr("href",res).click();(这是我一开始想的,但是是错的)
});
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值