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;
}
|
上の関数を、HTMLページの<head>セクションに格納することで、ページ内のスクリプトからコールすることができるようになります。
ここで作成した関数は、このチュートリアルの
全てのXML文書に使用します!
loadXMLDoc()用の外部JavaScript
上記関数の、メンテナンスをより容易にすると共に、同じコードが全ページで使用されるようにするため、
外部ファイルに保存することにします。
ファイル名を"loadxmldoc.js"として、HTMLのheadセクションにロードします。
これで、loadXMLDoc()関数は、ページ内のスクリプトからコールできるようになります。
次の例は、loadXMLDoc()を使用してbooks.xmlをロードしています:
Example
<html>
<head>
<script type="text/javascript" src="loadxmldoc.js">
</script>
</head>
<body>
<script type="text/javascript">
xmlDoc=loadXMLDoc("books.xml");
code goes here.....
</script>
</body>
</html> |
Try it yourself »
|
XMLファイルからデータを取得する方法は、次章で説明します。
loadXMLString() 関数
前ページのコードを、保守(及び、古いブラウザのチェック)がし易くなるように関数として作成します:
function loadXMLString(txt)
{
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(txt,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(txt);
}
return xmlDoc;
} |
上の関数を、HTMLページの<head>セクションに格納することで、ページ内のスクリプトからコールすることができるようになります。
ここで作成した関数は、このチュートリアルの
全てのXMLストリングに使用します!
loadXMLString()用の外部JavaScript
loadXMLString()を、"loadxmlstring.js"と言う名前で格納します。
Example
<html>
<head>
<script type="text/javascript" src="loadxmlstring.js"></script>
</head>
<body>
<script type="text/javascript">
text="<bookstore>"
text=text+"<book>";
text=text+"<title>Everyday Italian</title>";
text=text+"<author>Giada De Laurentiis</author>";
text=text+"<year>2005</year>";
text=text+"</book>";
text=text+"</bookstore>";
xmlDoc=loadXMLString(text);
code goes here.....
</script>
</body>
</html> |
試してください»
|
|