2011-10-20 20 views
0

異なるIE8バージョンの同じWebアプリケーションの異なる動作の奇妙な問題に直面しています.1つのバージョンはIE 8 CO(企業管理者)のバージョンAと同じで、もう1つは通常のIEです8バージョン。バージョンB 問題はバージョンAです。ボード上のファイルをフラッシュするonloadイベントで1つのCGIを呼び出しています。しかし、vAでは、ApacheのWebサーバーのログや内部のログ記録方法から把握できることはまったくありません。 vBの場合、正常に動作しており、期待どおりに動作しています。異なるIE8バージョンのWebアプリケーションの動作が異なる

[これの原因は考えられますか?

注 - 両方のシステム/環境はバージョンの違いは同じです。 また、このアプリケーションはFirefoxで完璧に動作しています。

私はこれに非常に多くの時間を過ごしていると私は助けてくださいまた、多くを検索し、同じ原因を発見しませんでした。 方法が見つからない限り、私は自分のプロジェクトで進めない。

IE8のvA(企業管理者)は、セキュリティ上の理由からファイル転送が拒否される可能性がありますか?

ありがとうございます...

+0

を1つがIE7互換モードで動作しているかどうかを確認してください。その後、ブラウザのセキュリティ設定を確認します。 – Spudley

+0

返信ありがとう... あなたが言ったのと同じことを確認します。 – Ved

答えて

2

私は解決策を見つけました... !!! この問題の原因となったのはIE8のセキュリティ設定の1つでした。 ツール - >インターネットオプション - >アドバンス - >セキュリティ - > "ネイティブXMLHttpサポートを有効にする"のようになっていました。無効になっていると、IEはサーバーにXHRを送信できなかったため、ハングしました。 私は次のコードを使用してこれを解決:あなたがIEの同じバージョンの2つのコピーで同じサイトの別の動作を持っている場合は、見て最初の場所でそれを持って来るために開発者ツールバー(F12キーを押している

function getXMLHttpRequest() { 
     var xmlHttpReq; 
     if (window.XMLHttpRequest) { 
      xmlHttpReq = new window.XMLHttpRequest; 
     } 
// Instead of using else if(window.ActiveXObject("Microsoft.XMLHTTP")){ 
//  xmlHttpReq = new window.ActiveXObject("Microsoft.XMLHTTP"); 
//} 
//I used this :- 
     else { 
      try { 
       xmlHttpReq = new window.ActiveXObject("Microsoft.XMLHTTP"); 
      } 
      catch(ex) { 
       alert('Exception in initializing the XMLHttpRequest object '+ex.toString()); 
       return null; 
      } 
     } 
     return xmlHttpReq; 
    } 
+1

明確にするために... IE8はAJAX要求を2つの方法のうちの1つを送信することができます。 「ネイティブ」XMLHTTPRequest(例:純粋なJavaScript)またはActiveXオブジェクト(複数のバージョン)を経由します。 AJAXソリューションを実装する場合(jQueryなど)、これを行うものを使用しない場合は、ネイティブバージョンを試してください。また、奇妙なセキュリティ設定や古いバージョンのIEユーザーに遭遇した場合は、ActiveXバージョンのフォールバックを提供する必要がありますネイティブバージョンをサポートしていないIE(IE7など) – scunliffe

+0

ありがとうございました:-) – Ved

関連する問題