后端是用Java写的一个下载的接口,返回的是文件流,需求:点击,请求,下载

利用iframe实现文件流下载

//把上一次创建的iframe删掉,不然随着下载次数的增多页面上会一堆的iframe
var haveIframe = $("iframe")
if(haveIframe){
    haveIframe.remove();
}
downloadFile(url);
function downloadFile(url) {   
   try{ 
        var elemIF = document.createElement("iframe");   
        elemIF.src = url+'?pSize=1&pNum=1&flag=1&sts=Y';   
        elemIF.style.display = "none";   
        document.body.appendChild(elemIF);   
    }catch(e){ 
        zzrw.alert("下载异常!");
    }     
}

利用from表单实现文件流下载

//同样道理,把上一次创建的form删掉,不然随着下载次数的增多页面上会一堆的form
var haveForm = $("#downloadfileform")
if(haveForm){
    $("#downloadfileform").remove();
}
var $eleForm = $("<form id='downloadfileform' method='get'><input id='input_data' name='data' type='hidden'>" +
        "<input id='pSize' name='pSize' value='"+obj.pSize+"' type='hidden'>"+
        "<input id='pNum' name='pNum' value='"+obj.pNum+"' type='hidden'>"+
        "<input id='flag' name='flag' value='"+obj.flag+"' type='hidden'>"+
        "<input id='sts' name='sts' value='"+obj.sts+"' type='hidden'>"+
        "</form>");
$eleForm.attr("action",url);

$(document.body).append($eleForm);
//提交表单,实现下载
$eleForm.submit();

相关文章:

  • 2021-11-22
  • 2022-01-28
  • 2022-02-18
  • 2021-11-15
  • 2022-12-23
  • 2022-12-23
  • 2021-12-23
猜你喜欢
  • 2022-02-08
  • 2021-06-28
  • 2021-12-19
  • 2021-09-01
  • 2022-12-23
  • 2022-01-21
相关资源
相似解决方案