主頁 > 知識庫 > Ajax實現(xiàn)文件下載

Ajax實現(xiàn)文件下載

熱門標簽:地圖標注項目怎么樣 云呼外撥網(wǎng)絡電話系統(tǒng) 個人怎樣在百度地圖標注地名 越南河內地圖標注 機器人電銷騙局揭秘 騰訊地圖標注位置能用多久 硅語電話機器人公司 ai機器人電銷資源 超級大富翁地圖標注

JQuery的ajax函數(shù)的返回類型只有xml、text、json、html等類型,沒有“流”類型,所以我們要實現(xiàn)ajax下載,不能夠使用相應的ajax函數(shù)進行文件下載。但可以用js生成一個form,用這個form提交參數(shù),并返回“流”類型的數(shù)據(jù)。在實現(xiàn)過程中,頁面也沒有進行刷新。

1. 使用ajax,ajax的返回值類型是json,text,html,xml類型,或者可以說ajax的發(fā)送,接受都只能是string字符串,不能流類型,所以無法實現(xiàn)文件下載,強用會出現(xiàn)response沖突。如果非要使用ajax的話,只能通過返回值得到生成的文件相關url。然后在回調函數(shù)里通過創(chuàng)建一個iframe,并設置其src值為文件url,或者一個對文件生成流的處理url,這樣操作來實現(xiàn)文件下載且頁面無刷新。

2. 不使用ajax,通過dom動態(tài)操作或創(chuàng)建iframe,form的方式來實現(xiàn),在下載文件的同時實現(xiàn)頁面不刷新,其中iframe的src可以是文件地址url來直接下載文件,也可以是流處理url通過response流輸出下載,form的是流處理url通過response流輸出下載,dom動態(tài)操作的時候實現(xiàn)文件下載,且頁面無刷新。要在下載的同時實現(xiàn)進度條的話,可以創(chuàng)建一個定時任務,每隔一定時間就向后臺發(fā)送請求,通過公用的對象,比如session,來取得文件下載的處理進度。

var title=$("input[name='gjzSelect']").val();
var rqTime = $(".ui-datepicker-time").val();
var ddd= rqTime.split("一");
var startTime=ddd[];
var endTime=ddd[];
var form = $("form>"); //定義一個form表單
form.attr('style', 'display:none'); //在form表單中添加查詢參數(shù)
form.attr('target', '');
form.attr('method', 'post');
form.attr('action', "%=basePath%>jiankong/madeExcel.do");
var input = $('input>');
input.attr('type', 'hidden');
input.attr('name', 'startTime');
input.attr('value', startTime);
var input = $('input>');
input.attr('type', 'hidden');
input.attr('name', 'endTime');
input.attr('value', endTime);
var input = $('input>');
input.attr('type', 'hidden');
input.attr('name', 'title');
input.attr('value', title);
$('body').append(form); //將表單放置在web中
form.append(input); //將查詢參數(shù)控件提交到表單上
form.append(input);
form.append(input);
form.submit();
%-- 
$.ajax({
url:'%=basePath%>jiankong/madeExcel.do',
cache:false,
data:{
'startTime':startTime,
'endTime':endTime,
'title' :title
},
error:function (e){
alert("導出失??!");
},
success:function (data){
alert("導出成功!");
} 
}); 
--%>

以上所述是小編給大家分享的Ajax實現(xiàn)文件下載的相關知識,希望對大家有所幫助!

您可能感興趣的文章:
  • JQuery的AJAX實現(xiàn)文件下載的小例子
  • Ajax請求二進制流進行處理(ajax異步下載文件)的簡單方法
  • Jquery Ajax請求文件下載操作失敗的原因分析及解決辦法
  • Ajax 生成流文件下載(實現(xiàn)代碼)
  • jQuery的ajax下載blob文件
  • 使用Ajax生成的Excel文件并下載的實例
  • jQuery使用動態(tài)渲染表單功能完成ajax文件下載
  • SpringMVC+Ajax實現(xiàn)文件批量上傳和下載功能實例代碼
  • PHP使用ajax的post方式下載excel文件簡單示例
  • ztree+ajax實現(xiàn)文件樹下載功能

標簽:遼源 鄭州 林芝 海南 邢臺 洛陽 舟山 內蒙古

巨人網(wǎng)絡通訊聲明:本文標題《Ajax實現(xiàn)文件下載》,本文關鍵詞  Ajax,實現(xiàn),文件下載,Ajax,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ajax實現(xiàn)文件下載》相關的同類信息!
  • 本頁收集關于Ajax實現(xiàn)文件下載的相關信息資訊供網(wǎng)民參考!
  • 推薦文章