DOMロード機能
XML DOM 関数の読み込み
XML ドキュメントを読み込むためのコードは関数に格納できます。
loadXMLDoc() 関数
前のページのコードを保守しやすくするには (古いブラウザーを確認してください)、関数として記述する必要があります:
function loadXMLDoc(dname)
{
if (window. XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp。 send( );
return xhttp.responseXML;
}
{
if (window. XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp。 send( );
return xhttp.responseXML;
}
上記の関数は HTML ページの <head> セクションに格納し、ページ内のスクリプトから呼び出すことができます。
上記の関数は、このチュートリアルのすべての XML ドキュメント インスタンスに使用されます。
loadXMLDoc() 用の外部 JavaScript
上記のコードを保守しやすくし、すべてのページで同じコードが使用されるようにするために、関数を外部ファイルに保存します。
ファイル名は「loadxmldoc.js」で、HTML ページの head セクションにロードされます。次に、ページ内のスクリプトは、loadXMLDoc() 関数を呼び出します。
次の例では、loadXMLDoc() 関数を使用して Books.xml をロードします。
例
<!DOCTYPE html> <html> <head> <script src="loadxmldoc.js"></script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue + "<br>"); document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue + "<br>"); document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue); </script> </body> </html>
サンプルの実行»
オンラインサンプルを表示するには、「サンプルの実行」ボタンをクリックしてください
入手方法XML ファイルからのデータについては、次の章で説明します。
loadXMLString() 関数
前のページのコードを保守しやすくするには (古いブラウザを確認してください)、関数として記述する必要があります。 DOMParser)
{parser=new DOMParser();
上記の関数は、このチュートリアルのすべての XML 文字列インスタンスに使用されます。 xmlDoc=parser.parseFromString(txt,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM") ;
xmlDoc.async=false;
xmlDoc.loadXML(txt);
}
return xmlDoc;
}
上記の関数は、HTML ページの <head> セクションに格納して、スクリプトから呼び出すことができます。ページ。
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM") ;
xmlDoc.async=false;
xmlDoc.loadXML(txt);
}
return xmlDoc;
}
上記の関数は、HTML ページの <head> セクションに格納して、スクリプトから呼び出すことができます。ページ。
loadXMLString()用の外部JavaScriptloadXMLString()関数を「loadxmlstring.js」というファイルに保存しました。
インスタンス
<!DOCTYPE html> <html> <head> <script src="loadxmlstring.js"></script> </head> <body> <script> text="<bookstore><book>"; text=text+"<title>Everyday Italian</title>"; text=text+"<author>Giada De Laurentiis</author>"; text=text+"<year>2005</year>"; text=text+"</book></bookstore>"; xmlDoc=loadXMLString(text); document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue); document.write("<br>"); document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue); document.write("<br>"); document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue); </script> </body> </html>