2017-03-01 44 views
0

var formdata = new FormData();XMLHttpRequestはIE 11のファイルダウンロードでは機能しません

var xhr = null; 
    if(typeof XMLHttpRequest != "undefined"){ 

     xhr = new XMLHttpRequest(); 
    } 
    else if(typeof window.ActiveXObject != "undefined"){ 
     try { 

      xhr = new ActiveXObject("Msxml2.XMLHTTP.4.0"); 
     } 
     catch(e){ 
      try { 

       xhr = new ActiveXObject("MSXML2.XMLHTTP"); 
      } 
      catch(e){ 
       try { 

        xhr = new ActiveXObject("Microsoft.XMLHTTP"); 
       } 
       catch(e){ 

        xhr = null; 
       } 
      } 
     } 
    } 

    xhr.open("GET",url, true); ///fileUploadTester/FileUploader 

    xhr.send(formdata); 


    xhr.responseType = "arraybuffer"; 
    xhr.onload = function(e) { 


     var ua = window.navigator.userAgent; 
     var msie = ua.indexOf("MSIE "); 

     if (msie > 0) // If Internet Explorer, return version number 
     { 

      var urlIE = URL; 
      window.location = urlIE; 
     } 
     else 
     { 
      window.location = this.responseURL; 
     } 
    }; 
} 

上記のコードは、私のメソッドを呼び出すときに私のjavaScriptメソッドから取得したものです。私の要件は、ユーザーのためにファイルをダウンロードすることです。 私はファイルを生成し、それを応答に追加するメソッドを持っています

他のブラウザでは、メソッドを呼び出して応答を返すことができますが、IE 11ではできません。 このコードまたはコード内のエラーの解決方法はありますか?

答えて

0

回答ありブラウザ名を取得していた方法が間違っていました。 javascriptを使って正しいブラウザ名を取得したら、それは動作していることを示しました

関連する問題