2012-01-09 9 views
2

ここには、私が書いたjQueryがあります。これは、画像のデータを読み取り、それを警告するものです。それが正常に動作するすべてのブラウザではなくIE .responseText

var jj = $.ajax({ 
     url: "/app/loading.gif", 
     success: function (a) { 
      alert(jj.responseText); 
     }, 
    }); 

は9-10文字にトリミングされ、それがISO-8859にない文字に達したときにIEが応答の文字列表現を破るためです。

この問題を解決する方法や修正点がありますか?それは、ファイルのサイズを増加させるので、私はBASE64を使用することはできません

NOTES

  • 主として
  • 私はそれにこのスクリプトを書いているページは、静的なHTMLページで、IIS 7.0で配信されても​​、事は私が絶対的な最低にmaintananceの変更を維持する必要があります。 (配布の理由から)
  • .responseTextの代わりにbyte[]を読むことができましたが、その方法を見つけることができませんでした。
  • またはおそらくそこにはUnicodeStringのようなものがありますので、私はそれにajaxレスポンスをマップできますか?

ご協力いただきまして誠にありがとうございます。

+1

あなたはJSに送信する前に、responseTextをエンコードすることができます。どのサーバサイド言語を使用していますか? – Marle1

+0

まあ、これもまた別のポイントです。私はサーバ側をメンテナンスのためにファイルをコピーするのと同じくらい単純なままにしたいと思います。 –

答えて

0

は、これを追加してみてください:

contentType: "image/gif; charset=utf-8", 
+0

これは私に同じ結果をもたらします。 –