AJAX实现文件下载的三种方式

方式一:使用hidden的iframe提交。

var downloadURL = "AA.action";
var iframe = document.createElement("iframe");
iframe.src = downloadURL;
iframe.style.display = "none";
document.body.appendChild(iframe);

方式二:创建新的Form提交。
var downloadURL = "AA.action";
var form = $("<form>");   //定义一个form表单
form.attr('style','display:none');   //在form表单中添加查询参数
form.attr('target','');
form.attr('method','post');
form.attr('action',downloadURL);
                    
var input1 = $('<input>'); 
input1.attr('type','hidden'); 
input1.attr('name','downPlanIds'); 
input1.attr('value','1');  

$('body').append(form);  //将表单放置在web中
form.append(input1);   //将查询参数控件提交到表单上
form.submit();   //表单提交

方式三:使用windows.open方法提交,但新窗口让它藏着页面底下。
var wWidth = document.body.clientWidth ;
var wHeight =document.body.clientHeight +1000;
window.open('AA.action','newwindow','height=5,width=5,top='+wHeight+',left='+wWidth+',toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no') ;
            		

相关文章

JS原生Ajax操作(XMLHttpRequest) GET请求 POST请求 兼容性问题 利用iframe模拟ajax 实现表单提交的返回...
AJAX 每日更新前端基础,如果觉得不错,点个star吧 &#128515; https://github.com/WindrunnerMax/E...
踩坑Axios提交form表单几种格式 前后端分离的开发前后端, 前端使用的vue,后端的安全模块使用的SpringSe...
很早就听闻ajax的名声,但是却一直不知道怎么用,今天自己捣鼓了一下,竟然会用了,哈哈哈哈。 为了防止...
需要在服务器上进行哈 jquery的ajax方法: // jquery请求 $.ajax({ url: &quot;./server/slider.js...
Ajax函数封装ajax.js // Get / Post // 参数 get post // 是否异步 // 如何处理响应数据 // URL // var...