使用ajax匯出excel的問題

2021-10-09 18:45:19 字數 1019 閱讀 9172

前言:最近專案需要excel匯出功能,由於匯出的引數過多,第一想法就是採用ajax的方式。但是用ajax匯出excel遇到了許多的問題。比如ajax是無法直接匯出excel的,因為ajax的返回值只能是字元流,而匯出excel是後台往瀏覽器中寫入二進位制的位元組流。所以嘗試了很多種方式去解決關於匯出的問題,以下是幾種解決方法。

需注意的地方:

var form = $("");

form.attr('style', 'display:none');

form.attr('target', '');

form.attr('method', 'post');

var input1 = $('');

input1.attr('type', 'hidden');

input1.attr('name', 'item');//引數名

input1.attr('value', json.stringify(json)); //向後台傳參,引數值 /* json.stringify($.serializeobject($('#comstatisticsform'))) */

form.submit();

form.remove();

需注意的地方:

前端:

$.ajax(catch(e)

},error:function (text)

});後台: public void download(httpservletrequest request,httpservletresponse response) throws exception

out.close();

in.close();

} catch (filenotfoundexception e1) catch (ioexception e)

}

function()
以上就是一些解決方式~~~~~

原生ajax匯出excel資料

web端請求 post方式請求後台的路徑 xhr.open post api consultform export exporttimeall true 匯出的excel是二進位制資料型別,所以設定為blob xhr.responsetype blob 請求頭 key,value 請求頭可以設定多個...

Ajax請求匯出Excel的問題

文章 自 ajax請求匯出excel的問題描述 解決 開始一直以為是瀏覽器相容性,或後台輸出檔案流 有問題,調了半天,也都一樣,不報任何錯。後來上網搜發現在類似的問題,ajax匯出excel沒反應,網上有人說不能使用ajax,換成位址重定向location.href就行,一換還真好使。就是ajax請...

Ajax下匯出Excel的解決辦法

ajax下excel不能按原來的方式匯出,因為在非同步方式下response.write 是會出錯的,所有在頁面載入的時候可以將匯出按鈕註冊為同步方式,同時在updatepanel裡不能註冊匯出按鈕,即可解決該問題。對於vs自帶的 ajax此辦法即可解決,網上找了n久,很多都是第三方ajax 非vs...