最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Ajax實現文件下載

 更新時間:2016年03月04日 11:20:16   作者:白志華  
本文給大家介紹ajax實現文件下載相關知識,涉及到ajax文件下載方面的知識,本文介紹的非常詳細,具有參考借鑒價值,感興趣的朋友一起學習吧

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

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

2. 不使用ajax,通過dom動態(tài)操作或創(chuàng)建iframe,form的方式來實現,在下載文件的同時實現頁面不刷新,其中iframe的src可以是文件地址url來直接下載文件,也可以是流處理url通過response流輸出下載,form的是流處理url通過response流輸出下載,dom動態(tài)操作的時候實現文件下載,且頁面無刷新。要在下載的同時實現進度條的話,可以創(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表單中添加查詢參數
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); //將查詢參數控件提交到表單上
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實現文件下載的相關知識,希望對大家有所幫助!

相關文章

最新評論

南昌市| 江永县| 安陆市| 台前县| 二连浩特市| 塘沽区| 千阳县| 大埔区| 涞源县| 赞皇县| 逊克县| 昌平区| 江陵县| 锡林浩特市| 新余市| 正蓝旗| 承德县| 英德市| 建德市| 曲麻莱县| 富民县| 新田县| 新干县| 西藏| 通许县| 徐水县| 晋城| 迭部县| 阳江市| 会宁县| 梅州市| 福泉市| 张家界市| 韩城市| 巴塘县| 开鲁县| 岫岩| 休宁县| 湖北省| 田阳县| 许昌市|