xmlをjavascriptで読み込み、HTMLに表示させようとしています。
IEでは出来たのですが、それ以外でのブラウザでどうしても読み込むことが出来ません。
簡単なxmlを作ります。例えばこの『これを表示』というテキストをfirefoxで表示させたい場合はどのように書けば良いのでしょうか?
<?xml version="1.0" encoding="UTF-8"?>
<items>
<item>これを表示</item>
</items>
今はこのようなjsを作っています。
アラートのAAAでxmlのテキストを表示させるようにしたいのですが・・・
ノードへのアクセス方法?が間違っているのはわかっているんです。ただ、検索して調べても色々出てきて、色々試しても上手くいかず・・・どうしても分がわかりません。
すみません、どなたかご指摘お願い致します!!
xmlData = new XMLHttpRequest(); // XMLドキュメントをDOMで扱うためのオブジェクトを作る
xmlData.overrideMimeType("sample.xml"); // XMLドキュメントを読み込む
var AAA = xmlItemData.documentElement.childNodes[1].childNodes[1].text;
alert(AAA);
宜しくお願い致します。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
IEでは出来たのですが、それ以外でのブラウザでどうしても読み込むことが出来ません。
本当ですか?逆じゃないですか!隠されたコードがあるんじゃないっすか?
普通は、(ajax)
xmlData =(window.ActiveXObject)?new ActiveXObject("Msxml2.XMLHTTP"):new XMLHttpRequest();
か(static)
var xmlData = (window.ActiveXObject)?new ActiveXObject('microsoft.XMLDOM'):document.implementation.createDocument("", "", null);
みたいに、xmlDataを生成してにロードするような...
.overrideMimeType("sample.xml"); // XMLドキュメントを読み込む
ってどこにありました。引数はMIMEタイプと文字コードの指定じゃないんですか...
ロードは
xmlData.async=false;
xmlData.load("sample.xml");
で、xmlDoc.documentElementでXMLのルートをDOMで扱うとか、
xmlData.responsXMLをDOMで扱うとか、
どの場合も、IEとそれ以外では、XMLのノードリストのアクセスがちょっと違うので
nodeTypeとかをチェックしてないと自身のtextnodeを取るつもりが、atributeの値
を持ってきたりして....
それとも私が無知なのか....
この回答への補足
有難うございます!
すみません、言葉が足りませんでした。
IEで成功したのはこのソースではありません。
ここに書いたのは、IE以外で動くものを模索している状態のソースです。
あと、ここに書いた私のソースは間違っていると思います。そいうか、本当にまだ初心者で理解が及んでいないので、違っていてもそれが分からないんです。
今はまだ拾ってきたものを片っ端から試してみている状態です。
申し訳ありません・・・。
No.2
- 回答日時:
No.1補足
"microsoft.XMLDOM" は、今は "MSXML2.DOMDocument" のはず。
それからajaxの方はとりあえず、....無視してください。
No.3
- 回答日時:
XMLドキュメントを読み込むのはoverrideMimeTypeではありません。
参考にされている解説書、解説サイトを確認して下さい。
xmlData.overrideMimeType("application/xml");
.textでも行けるかもしれませんが、.nodeValueがXML-DOMでたしか標準だったと思います。
var AAA = xmlItemData.documentElement.childNodes[1].childNodes[1].nodeValue;
IE7以上でXMLHttpRequestをサポートしています。
インターネットオプションでサポートしないようにも出来ますので、XMLHttpRequestとActiveXObjectの両方をチェックする方が良いと思います。
また、ActiveXObjectでAjaxをサポートする標準的な方法はXMLDomではなく、
IE6ではMicrosoft.XMLHTTP、
それ以上ではMsxml2.XMLHttp.3.0、Msxml2.XMLHttp.2.0、Msxml2.XMLHttp、もしくはMsxml2.XMLHttp.4.0(など)のバージョンがあります。
どのバージョンがインストールされているかクライアントにより異なるため、最新の物から順番に全部のバージョンをチェックするのが良いと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS ホームページのHTMLサイトマップを自動作成する方法を探しています。 1 2023/05/17 21:36
- アプリ Android studio 初心者 Hello Android!しか表示されない 1 2023/08/01 08:47
- JavaScript 読み込んだQRコードをフォームに受け渡したい 1 2023/05/18 11:18
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- XML XML同じ名前の要素を自動で集約するツール 1 2022/04/11 09:21
- HTML・CSS 疑似要素で背景画像に指定したSVG画像の色変更 2 2023/01/30 22:45
- AJAX 自作の地図をグーグルマップのようにしたい 3 2022/11/15 11:53
- Photoshop(フォトショップ) photoshop ドキュメントを読み込み中…から10日経ちます。 1 2022/12/13 17:25
- JavaScript Javascriptを使ってQRコード読み取り、取得した情報をPOSTしたいと思っています。 1 2023/04/28 15:18
- WordPress(ワードプレス) ワードプレスにて .xmlファイルの使い方をご存知の方、よろしくお願いいたします。 2 2022/09/30 00:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
gitでバージョン指定してダウン...
-
Window CE でJava appletは使え...
-
MSCOMCTL.OCXのアップデートの方法
-
visual stadio 参照問題
-
UWSCが、動作環境の違いで動か...
-
VS C#で作るアプリのバージョン...
-
使用しているJUnitのバージョン...
-
vba クリップボードクリアにつ...
-
JSPファイルで生じるエラーをど...
-
Javaでのエラーについて
-
Pythonを無料(安価)で学ぶ方...
-
IISワーカープロセスが原因でCP...
-
エクリプスのプログラミングに...
-
EclipseとVisual StudioをPC1台...
-
文字列に半角スペースがあるか...
-
プログラムの起動、利用につい...
-
MSFormsとは何ですか?
-
javaでの#if 0 #endif文
-
Webアプリケーションを開発する...
-
サイドワインダーのドライバ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
gitでバージョン指定してダウン...
-
使用しているJUnitのバージョン...
-
CrystalReportsのバージョン確...
-
EclipseでJavaコンパイラのバー...
-
visual stadio 参照問題
-
バイナリファイルの著作権など...
-
VMwareの古いバージョンがダウ...
-
VBAでDVDのトレイを開く。、
-
Selenium/VBA/Chrome エラーで...
-
【javaコンパイル時のエラーに...
-
MSCOMCTL.OCXのアップデートの方法
-
Javaのバージョンアップにとも...
-
chromedriverのDLについて
-
JRE 1.5.0.14のダウンロード先...
-
gridviewでの高さの取得方法
-
C# Excelを遅延バインディング...
-
Tmocatのバージョン
-
Flashplayerの運用について
-
エクセルVBAがMACで動かない
-
reactを利用できるnode.jsのバ...
おすすめ情報