ZhangXin

ZhangXin's blog


  • Home

  • Archives

ajax文件下载

Posted on 2018-02-08 Edited on 2018-02-15 Views: Valine:

解决ajax提交时文件下载冲突的问题

由于ajax提交时无法接收流类型,导致文件无法下载,在一定要使用ajax提交时,只能先使用ajax提交完成下载前的必要操作,如文件的生成、创建,或者通过ajax返回值得到下载的URL,再模拟表单提交去请求下载URL,来达到文件下载并不刷新页面的效果。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$('#download').on('click',function(){
$.ajax({
type:'POST',
url:'/postContractstr.jspx',
contentType:'application/x-www-form-urlencoded;charset="UTF-8',
// data:{htmlstr:encodeURIComponent(htmlStr)},
data:{htmlstr:htmlStr},
success:function(){
console.log('下载成功');
post("/downloadContract.jspx",null);
},
error:function(){
console.log('下载失败');
}
});
});
//模拟表单提交
function post(URL, PARAMS) {
var temp = document.createElement("form");
temp.action = URL;
temp.method = "post";
temp.style.display = "none";
var opt = document.createElement("textarea");
opt.name = "data";
opt.value = PARAMS;
temp.appendChild(opt);
document.body.appendChild(temp);
temp.submit();
return temp;
}
# ajax
使用itext和flying saucer生成PDF文件并下载
  • Table of Contents
  • Overview
ZhangXin

ZhangXin

Fusce porttitor consectetur venenatis.
15 posts
12 tags
Links
  • 进击的学霸的博客
  • 前端资源共享
  1. 1. 解决ajax提交时文件下载冲突的问题
© 2019 ZhangXin
Powered by Hexo v3.9.0
|
Theme – NexT.Pisces v7.3.0
|