前端页面下载

方法一:window.open(url);

1 window.open("http://127.0.0.1:8001/admin/finance/export/exportExcel");

  但这有个问题:浏览器会打开一个新窗口,然后迅速自动关闭,体验非常不好。

方法二:模拟form提交

  由于ajax函数的返回类型只有xml、text、json、html等类型,没有“流”类型,所以通过ajax去请求该接口是无法下载文件的,所以我们创建一个新的form元素来请求接口。

1 var $eleForm = $("<form method='get'></form>");
2 $eleForm.attr("action","http://127.0.0.1:8001/admin/finance/export/exportExcel");
3 $(document.body).append($eleForm);
4 $eleForm.submit();

方法三:模拟a标签点击(强烈推荐)

  jquery实在是太方便了,犹如控件的自摸,仅仅一行代码流畅下载!

1 $("<a href='http://127.0.0.1:8001/admin/finance/export/exportExcel'/>")[0].click();

 

posted @ 2018-09-30 15:28  光何  阅读(1470)  评论(0编辑  收藏  举报