问题描述
前端发送Ajax请求后,返回文件下载地址,需将该地址直接打开完成下载任务。
//刚开始用window.open实现自动下载,但下载速度非常慢
window.open(json.url,'_blank','width=1,height=1');
解决方案
//后来利用a标签实现
var data_package_html = ' <a href="' + json.url + '"><span id="downFile"></span></a>';
jQuery('form#down_pkg_form').append(data_package_html);
jQuery('#downFile').click();//发现直接click<a>标签发现无法触发该事件,click<a>标签的内部元素可以触发
jQuery('form#down_pkg_form').remove();