人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

xmlHttpRequestのresponseXMLでXMLをサファリ1.3.1で処理したいのですが上手くXMLの中のtextの値が取れません。XMLの中身がブラウザ上でみれれば取れると思うんですがどうしたら良いでしょう。XMLはUTF-8にしています。

●質問者: W_for_W
●カテゴリ:ウェブ制作
✍キーワード:UTF-8 XML XMLHTTPRequest サファリ ブラウザ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● jouno
●30ポイント

http://www.tohoho-web.com/js/dom.htm

ドキュメントオブジェクトモデル(DOM)

状況がいまひとつわかりません。文字化けするということでしょうか。responseXMLのなかに入っているサーバー側から返されるXMLのなかのタグの中身=テキストノードの取り出し方がわからないということでしょうか。それともそもそもresponseXMLのなかみがパースエラーなどでnullになってしまう、ということでしょうか。テキストノードの取り出し方なら、最初のリンク先の説明でわかるのではないかと思います。

http://www.hawk.34sp.com/stdpls/xml/xmlhttprequest.html

Hawk's W3 Laboratory : XML : XMLHttpRequestについて

◎質問者からの返答

aratでresXML.documentElement.getElementsByTagName(’address’).item(0).childNodes[0]を表示すると

[object Text]と表示されます。そのあとがわかりません。


2 ● jouno
●30ポイント

http://www.mozilla-japan.org/docs/dom/domref/dom_el_ref.html#102...

DOM Element リファレンス

address = documentElement.getElementsByTagName(’address’).item(0)


とすると、


address.firstChild.nodeValue

address.text

address.innerHTML


の三通りの記述が可能です。


address.firstChildでテキストノードになり、そのテキストノードの値が、nodeValueなわけです。


3 ● upride
●80ポイント

http://www.cityfujisawa.ne.jp/~yanai/xml/dom/step2.html

値をとる場合

resXML.documentElement.childNodes.item(i).childNodes.item(i).nodeValue

又は

resXML.documentElement.childNodes.item(i).childNodes.item(i).text

でいけるかと。

属性をとる場合URLを参考に。


>XMLの中身がブラウザ上でみれれば取れると思うんですが

resXML.responseText

してみるとよろしいかと

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ