使用post方式匯出Excel——表單提交方式
阿新 • • 發佈:2018-12-31
一般情況下,我們通過ajax獲取資料都是採用get方式獲取,但如果ajax的請求url過長時,get方式由於瀏覽器對url長度不同會導致無法正常獲取資料,尤其是IE。
這時候,我們需要通過post請求的方式獲取資料,而如果我們需要通過post方式匯出Excel表格,則需要通過表單提交的方式匯出Excel。
function postExcelFile(params, url) { //params是post請求需要的引數,url是請求url地址
var form = document.createElement("form");
form.style.display = 'none' ;
form.action = url;
form.method = "post";
document.body.appendChild(form);
for(var key in params){
var input = document.createElement("input");
input.type = "hidden";
input.name = key;
input.value = params[key];
form.appendChild(input);
}
form.submit();
form.remove();
}
//點選匯出按鈕匯出excel表格
exportButton.onclick = function() {
var params = {};
postExcelFile(params, "http://www.XXX_excel");
}
嘿嘿,完美解決問題!如果後端返回伺服器異常,則需要後臺配合修改了。