1. 程式人生 > 其它 >jQuery 匯出Excel(後臺返回文件流),前端處理髮現相容不了火狐50版本,以下是解決辦法,拿走不謝

jQuery 匯出Excel(後臺返回文件流),前端處理髮現相容不了火狐50版本,以下是解決辦法,拿走不謝

技術標籤:原創javascriptjquery

匯出Excel 相容火狐寫法

var exports = function(url,fileName,param){
		var xhr = new XMLHttpRequest();
		xhr.open('GET', url, true); //post請求,請求地址,是否非同步
		xhr.responseType = "blob"; // 返回型別blob
		xhr.setRequestHeader(' ', ' ');
		xhr.onload = function() { // 請求完成處理函式
			if (this.status === 200) {
				var blob = this.response;
				var reader = new FileReader();
				reader.readAsDataURL(blob); 
				reader.onload = function (e) {
					// 轉換完成,建立一個a標籤用於下載
					var a = document.createElement('a');
					a.download = fileName + '.xlsx';
					a.href = e.target.result;
					$("body").append(a);  // 修復firefox中無法觸發click
					a.click();
					$(a).remove();
				}
			}else { toastr.error("請求失敗"); }
		};
		// 傳送ajax請求
		xhr.send(param);
	}