JavaScriptプログラミング入門(その8)ローカルのxmlファイルを読み込む
サンプル sample.xml
<?xml version="1.0" encoding="UTF-8"?>
<rootTag>
<items>
<no>1</no>
<title>Yahoo! JAPAN</title>
<link>http://www.yahoo.co.jp/</link>
</items>
<items>
<no>2</no>
<title>iGoogle</title>
<link>http://www.google.co.jp/</link>
</items>
<items>
<no>3</no>
<title>楽天が運営するポータルサイト</title>
<link>http://www.infoseek.co.jp/</link>
</items>
</rootTag>
1.xmlファイルを取り込むための空のドキュメントを生成する。
Netscape
var xmldoc = document.implementation.createDocument()
※document.implementationプロパティは、DOMImplementaion
オブジェクトへの参照。
※DOMImplementationオブジェクトのcreateDocumentメソッド
はXMLのDocumentオブジェクトを生成する。
※Firefoxで、alert(xmldoc)とすると「XMLDocument」と
表示される。
IE
var xmldoc = ActiveXObject("MSXML2.DOMDocument)
2.xmlファイルを取り込む。
xmldoc.async = false;
xmldoc.load("sample.xml");
3.取り込んだxmlファイルを操作する
var tags = xmldoc.getElementsByTagName("items");
for (var i=0; i<tags.length; i++){
tags[i].getElementsByTagName("no")[0].firstChild.nodeValue;
tags[i].getElementsByTagName("title")[0].firstChild.nodeValue;
tags[i].getElementsByTagName("link")[0].firstChild.nodeValue;
}
XMLDocument | Document |
---|
ATTRIBUTE_NODE | ATTRIBUTE_NODE |
CDATA_SECTION_NODE | CDATA_SECTION_NODE |
COMMENT_NODE | COMMENT_NODE |
DOCUMENT_FRAGMENT_NODE | DOCUMENT_FRAGMENT_NODE |
DOCUMENT_NODE | DOCUMENT_NODE |
DOCUMENT_POSITION_CONTAINED_BY | DOCUMENT_POSITION_CONTAINED_BY |
DOCUMENT_POSITION_CONTAINS | DOCUMENT_POSITION_CONTAINS |
DOCUMENT_POSITION_DISCONNECTED | DOCUMENT_POSITION_DISCONNECTED |
DOCUMENT_POSITION_FOLLOWING | DOCUMENT_POSITION_FOLLOWING |
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC | DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC |
DOCUMENT_POSITION_PRECEDING | DOCUMENT_POSITION_PRECEDING |
DOCUMENT_TYPE_NODE | DOCUMENT_TYPE_NODE |
ELEMENT_NODE | ELEMENT_NODE |
ENTITY_NODE | ENTITY_NODE |
ENTITY_REFERENCE_NODE | ENTITY_REFERENCE_NODE |
NOTATION_NODE | NOTATION_NODE |
PROCESSING_INSTRUCTION_NODE | PROCESSING_INSTRUCTION_NODE |
TEXT_NODE | TEXT_NODE |
--- | URL |
addBinding | addBinding |
adoptNode | adoptNode |
--- | alinkColor |
--- | anchors |
appendChild | appendChild |
async | --- |
--- | applets |
attributes | attributes |
baseURI | baseURI |
--- | bgColor |
--- | body |
--- | captureEvents |
characterSet | characterSet |
childNodes | childNodes |
--- | clear |
cloneNode | cloneNode |
--- | close |
compareDocumentPosition | compareDocumentPosition |
--- | compatMode |
contentType | contentType |
--- | cookie |
createAttribute | createAttribute |
createAttributeNS | createAttributeNS |
createCDATASection | createCDATASection |
createComment | createComment |
createDocumentFragment | createDocumentFragment |
createElement | createElement |
createElementNS | createElementNS |
createEntityReference | createEntityReference |
createEvent | createEvent |
createExpression | createExpression |
createNSResolver | createNSResolver |
createNodeIterator | createNodeIterator |
createProcessingInstruction | createProcessingInstruction |
createRange | createRange |
createTextNode | createTextNode |
createTreeWalker | createTreeWalker |
defaultView | defaultView |
--- | designMode |
dir | dir |
dispatchEvent | dispatchEvent |
doctype | doctype |
documentElement | documentElement |
documentURI | documentURI |
domConfig | domConfig |
--- | domain |
--- | embeds |
evaluate | evaluate |
evaluateFIXptr | --- |
evaluateXPointer | --- |
--- | execCommand |
--- | execCommandShowHelp |
--- | fgColor |
firstChild | firstChild |
--- | forms |
getAnonymousElementByAttribute | getAnonymousElementByAttribute |
getAnonymousNodes | getAnonymousNodes |
getBindingParent | getBindingParent |
getBoxObjectFor | getBoxObjectFor |
getElementById | getElementById |
--- | getElementsByName |
getElementsByTagName | getElementsByTagName |
getElementsByTagNameNS | getElementsByTagNameNS |
getFeature | getFeature |
--- | getSelection |
getUserData | getUserData |
hasAttributes | hasAttributes |
hasChildNodes | hasChildNodes |
--- | height |
--- | images |
implementation | implementation |
importNode | importNode |
inputEncoding | inputEncoding |
insertBefore | insertBefore |
isDefaultNamespace | isDefaultNamespace |
isEqualNode | isEqualNode |
isSameNode | isSameNode |
isSupported | isSupported |
lastChild | lastChild |
lastModified | lastModified |
--- | linkColor |
--- | links |
load | --- |
loadBindingDocument | loadBindingDocument |
localName | localName |
lookupNamespaceURI | lookupNamespaceURI |
lookupPrefix | lookupPrefix |
namespaceURI | namespaceURI |
nextSibling | nextSibling |
nodeName | nodeName |
nodeType | nodeType |
nodeValue | nodeValue |
normalize | normalize |
normalizeDocument | normalizeDocument |
ownerDocument | ownerDocument |
parentNode | parentNode |
--- | plugins |
preferredStylesheetSet | preferredStylesheetSet |
prefix | prefix |
previousSibling | previousSibling |
--- | queryCommandEnabled |
--- | queryCommandIndeterm |
--- | queryCommandState |
--- | queryCommandSupported |
--- | queryCommandText |
--- | queryCommandValue |
--- | readyState |
referrer | referrer |
--- | releaseEvents |
removeBinding | removeBinding |
removeChild | removeChild |
removeEventListener | removeEventListener |
renameNode | renameNode |
replaceChild | replaceChild |
--- | routeEvent |
setBoxObjectFor | setBoxObjectFor |
setUserData | setUserData |
strictErrorChecking | strictErrorChecking |
styleSheets | styleSheets |
textContent | textContent |
title | title |
--- | vlinkColor |
--- | width |
--- | write |
--- | writeln |
xmlEncoding | xmlEncoding |
xmlStandalone | xmlStandalone |
xmlVersion | xmlVersion |