2017-01-23 8 views
0

JSをIE9用に使用して新しいダウンロード機能を作成しましたが、機能しません。ie9 javascriptダウンロード機能が動作しない

descargarArchivo : function (url, idlote) { 
      var str = window.location.href+"/"+url; 
      str = str.replace("form.do/", ""); 
      // Le da nombre del fichero que se va a descargar 
      var filename = 'factura_'+idlote; 
      xhr= new XMLHttpRequest(); 
      xhr.responseType = 'blob'; 
      xhr.onload = function() { 
         var a = document.createElement('a'); 
         a.href = window.URL.createObjectURL(xhr.response); 
         a.download = filename; // Set the file name. 
         a.style.display = 'none'; 
         document.body.appendChild(a);       
         a.click(); 
         delete a; 
        } 
       } 
      }; 
      xhr.open('GET', str); 
      xhr.send(); 
     } 

私はIE9で何のBLOB型が存在しない、ことを読んで、そうxhr.response戻り未定義。どうすれば解決できますか?この答えで

+2

stackoverflowで解決策を探しましたか?これはすでに質問されているようですか? IE9 Blob Polyfill – epascarello

+0

はい、私は答えがないとたくさんの質問があります。 –

+0

Ajaxを使用してフォームを送信せず、サーバーにダウンロード・ヘッダーを設定させることはできませんでした。 – epascarello

答えて

0

ルック:https://stackoverflow.com/a/1926163/2435443

彼は、バイナリ配列にバイト文字列を変換するために注入されたVBScriptの(ActiveXObjectの)を使用して、それがオブジェクト定義のないブロブ「エミュレーション」のようなものです。高速に見える&堅牢。

関連する問題