作成中のホームページで、条件を入力させてその条件に合ったデータ(XMLで管理)を表示する
という内容のモノを作ろうとしています。
実際に一通り動く所までは出来たのですが、IEでしか動作せず
Firefox等の他ブラウザだと動作しません。
調べてみると、ActiveXObjectが使えないようなのですが
どういう方法で実装すると動作するようになるのでしょうか。
よろしくお願いします。
----------以下ソース一部----------
// ワーク用の XML ドキュメントオブジェクト
var objDocWk = new ActiveXObject("Msxml2.DOMDocument.3.0")
// 出力用の新しいルートノードを作成
dstNd = objDocWk.createNode(1, "list", "")
// XML ドキュメントオブジェクト生成
var objDoc = new ActiveXObject("Msxml2.DOMDocument.3.0")
objDoc.async = false
objDoc.load("msch.xml")
var objRootNode = objDoc.documentElement.childNodes
=======================補足=======================
下記のようにやってみたのですが、jsのエラーが起り原因がわからないです。※fireFoxのみIEでは動作確認済
if (window.ActiveXObject) {
//for IE
// XML ドキュメントオブジェクト生成
var objDoc = new ActiveXObject("Msxml2.DOMDocument.3.0")
objDoc.async = false
// 曲情報の読込み
objDoc.load("msch/msch.xml")
// ワーク用の XML ドキュメントオブジェクト
var objDocWk = new ActiveXObject("Msxml2.DOMDocument.3.0")
} else {
//for Firefox
// XML ドキュメントオブジェクト生成
var xhttp = new XMLHttpRequest();
xhttp.open("GET", "msch/msch.xml", false);
xhttp.send(null);
var objDoc = xhttp.responseText;
window.alert(objDoc);
// ワーク用の XML ドキュメントオブジェクト
var xhttp2 = new XMLHttpRequest();
xhttp2.open("GET", "msch/msch.xml", false);
xhttp2.send(null);
var objDocWk = xhttp2.responseText;
window.alert(objDocWk);
}
// 出力用の新しいルートノードを作成
dstNd = objDocWk.createNode(1, "musiclist", "")
// 曲情報のルートノードを取得
var objRootNode = objDoc.documentElement.childNodes
エラー内容が
objDocWk.createNode is not a function と
objDoc.documentElement is undefined です。
お礼
確かにコピペじゃダメですね^^; もうちょっと勉強して出直してきます… ありがとうございます。