« October 2006 | Main | April 2008 »

Monday, November 12, 2007

Ajax: JSONの読み込みがIE6でエラーになる

AjaxなWebプログラムをしているときにはまった話を1つ。

最近、XmlHttpRequestのresponseTextを受け取る方法としてJSONという形式が簡単に使えるということで使ってみようとした。JavaScriptではJSON形式は直接evalできたり、json.jsでパースしたりできるのだが、なぜかFirefoxやSafariでは動くのに、Internet Explorerでだけエラーが発生して動作しない。色々、調べた結果、文字コードが関係あることが分かった。

結局、Webサーバのphp.iniの中の設定で、デフォルト文字コードの設定があるのだが、これを

default_charset = "UTF8"

としていたのが問題だった。UTF8という文字セットは、IEでだけ受け付けられないらしい。そのため

default_charset = "UTF-8"

と書かなければならなかった。ほんの一文字の間違いで大きな違いであった。

| | Comments (0) | TrackBack (0)

« October 2006 | Main | April 2008 »