IE瀏覽器a標簽無法下載問題解決(IE瀏覽器a標簽download屬性不兼容問題解決)


//文件地址
var url = '../aaa/bbb/模板.xlsx';
    var xhr = new XMLHttpRequest();
    xhr.open('get', url, true); 
    xhr.responseType = "blob"; // 返回類型blob
    // 定義請求完成的處理函數,請求前也可以增加加載框/禁用下載按鈕邏輯
    xhr.onload = function() {
        // 請求完成
        if(this.status === 200) {
            // 返回200
        var blob = this.response;
        var href = window.URL.createObjectURL(blob); //創建下載的鏈接
//判斷是否是IE瀏覽器,是的話返回true
        if (window.navigator.msSaveBlob) {
          try {
            window.navigator.msSaveBlob(blob, '模板.xlsx')
          } catch (e) {
            console.log(e);
          }
        } else {
          // 谷歌瀏覽器 創建a標簽 添加download屬性下載
          var downloadElement = document.createElement('a');
          downloadElement.href = href;
          downloadElement.target = '_blank';
          downloadElement.download = '模板.xlsx'; //下載后文件名
          document.body.appendChild(downloadElement);
          downloadElement.click(); //點擊下載
          document.body.removeChild(downloadElement); //下載完成移除元素
          window.URL.revokeObjectURL(href); //釋放掉blob對象
        }
            }
        }
    // 發送ajax請求
    xhr.send()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM