質問: ajax:firefoxだと動作しない 既出でしたらすみません。 ieだとうまく動作するものが、firefoxだと動作しません。 原因をご存知の方がいらっしゃいましたら、 ご教示願えますでしょうか。 参考書籍などをお伝えいただくだけでも構いません。 私はプログラミングの知識はありますが、 domについては初心者です。 よろしくお願いします。 ----------html/jsソース ajaxサンプル ここにデータを読み込みます。 ----------xmlデータ(test_xml03.xml) xml version="1.0" encoding="utf-8" ? アメリカ 米 ----------状況 「データの読み込み」ボタンをクリックすると、 ieでは"result"部分に 「アメリカ」と出ますが、 firefoxだと何も起こりません。 ----------環境 windowsxp ie6.0 firefox2.0 prototype.jsを使用 ----------補足 使用しているjavascriptは、自分で調べた限りでは ie/ff共に使用できるコードばかりのはずです。 いろいろと試してみましたが、わかりません。 どうかよろしくお願い申し上げます。
回答: > firefoxだと何も起こりません。 geterror関数が呼び出されているのかいないのか、 または何行目まで実行できているのか、 それを調べるのが先決では? > function getresponse(req){ > var varresult = req.responsexml.getelementsbytagname('result'); > var varitem = varresult[0].getelementsbytagname('country'); > $('result').innerhtml = varitem[0].firstchild.nodevalue; > } responsexmlではなくresponsexml(xmlは大文字)ですが、、、 bbs投稿時の記述ミス? mime-type(content-typeヘッダ)はどうなっていますか? ieはmime-typeにかかわらず、拡張子が.xmlとなっていればresponsexmlにその内容を格納しますが、 それ以外のブラウザでは拡張子で判断せずに、mime-typeで判断するため、content-type: text/htmlなどが出力されている場合、responsetextにしか内容が入りません。 .cgiや.aspなど内容が変化しそうな拡張子の場合は、mime-typeを調べているようです。 (マイナーバージョンアップにより仕様が変わっているかも知れません) firstchildが怪しいと言えば怪しいんですが、 それを説明すると長いので、、、