1、Document 方法 abort 方法说明 取消一个进行中的异步下载 基本语法 xmlDocument.abort(); 语法说明 如果这个方法在异步下载时被呼叫,所有的解析动作会停止,而且在内存中的文件会被释放。 使用范例 appendChild 方法说明 加上一个节点当作指定节点最后的子节点 基本语法 xmlDocumentNode.appendChild(newChild); 语法说明 newChild 是附加子节点的地址。 使用范例 docObj = xmlDoc.documentElement; alert(docObj.xml);
2、objNewNode = docObj. appendChild(xmlDoc. documentElement.firstChild); alert(docObj.xml); cloneNode 方法说明 建立指定节点的复制。 基本语法 xmlDocumentNode.cloneNode(deep); 语法说明 deep 是一个布尔值。如果为true,此节点会复制以指定节点发展出去的所有节点。如果是false,只有指定的节点和它的属性被复制。 使用范例 currNode = xmlDoc.documentElement.childNodes.item(1); obj
3、ClonedNode = currNode.cloneNode(1); alert(objClonedNode.xml); createAttribute 方法说明 建立一个指定名称的属性。 基本语法 xmlDocument.createAttribute(name); 语法说明 name 是被建立属性的名称。 使用范例 objNewAtt = xmlDoc.createAttribute("encryption"); alert(objNewAtt.xml); createCDATASection 方法说明 建立一个包含特定数据的CDATA。 基本语法 x
4、mlDocument.createCDATASection(data); 语法说明 data 是一个字符串,且包含了被置放在CDATA 的资料。 使用范例 objNewCDATA = xmlDoc.createCDATASection("This is a CDATA Section"); alert(objNewCDATA.xml); createComment 方法说明 建立一个包含指定数据的批注。 基本语法 xmlDocument.createComment(data); 语法说明 data 是一个字符串,且包含了被置放在批注的资料。 使用范例 objNew
5、Comment = xmlDoc.createComment("This is a comment"); alert(objNewComment.xml); createDocumentFragment 方法说明 建立一个空的文件片断对象。 基本语法 xmlDocument.createDocumentFragment(); 语法说明 一个新的文件片断被建立,但没有加到文件树中。要加入片断到文件树中,必须使用插入方法,例如insertBefore、replaceChild 或appendChild。 使用范例 objNewFragment = xmlDoc.createD
6、ocumentFragment(); alert(objNewFragment.xml); createElement 方法说明 建立一个指定名称的元素。 基本语法 xmlDocument.createElement(tagName); 语法说明 tagName 是一个区分大小写的字符串来指定新元素名称。 使用范例 objNewElement = xmlDoc.createElement("TO"); alert(objNewElement.xml); createEntityReference 方法说明 建立一个参照到指定名称的实体。 基本语法 xmlDo
7、cument.createEntityReference(name); 语法说明 name 是一个区分大小写的字符串,来指定新实体引用的名称。一个新的实体引用被建立,但是并没有被加到文件树中。若要将实体引用加到文件树中,必须使用一种插入方法,例如:insertBefore,replaceChild,或appendChild。 使用范例 objNewER = xmlDoc.createEntityReference("eRef"); alert(objNewER.xml); createNode 方法说明 建立一个指定型态、名称,及命名空间的新节点。 基本语法 xmlDoc
8、ument.createNode(type, name, nameSpaceURI); 语法说明 type 用来确认要被建立的节点型态,name 是一个字符串来确认新节点的名称,命名空间的前缀则是选择性的。nameSpaceURI 是一个定义命名空间URI 的字符串。如果前缀被包含在名称参数中,此节点会在nameSpaceURI 的内文中以指定的前缀建立。如果不包含前缀,指定的命名空间会被视为预设的命名空间。 使用范例 objNewNode = xmlDoc.createNode(1, "TO", ""); alert(objNewNode.xml); createProcess
9、ingInstruction 方法说明 建立一个新的处理指令,包含了指定的目标和数据。 基本语法 xmlDocument.createProcessingInstruction(target, data); 语法说明 target 是表示目标、名称或处理指令的字符串。Data 是表示处理指令的值。一个新的处理指令被建立,但是并没有加到文件树中。要把处理指令加到文件树中,必须使用插入方法,例如:insertBefore、replaceChild,或是appendChild。 使用范例 objNewPI = xmlDoc.createProcessingInstruction(‘X
10、ML’, ‘version="1.0"’); alert(objNewPI.xml); createTextNode 方法说明 建立一个新的text 节点,并包含指定的数据。 基本语法 xmlDocument.createTextNode(data); 语法说明 data 是一个代表新text 节点的字符串。一个新的text 节点被建立,但是没有加到文件树中。若要将节点加到文件树中,必须使用插入方法,例如:insertBefore,replaceChild或appendChild。 使用范例 objNewTextNode = xmlDoc.createTextNode("
11、This is a text node."); alert(objNewTextNode.xml); getElementsByTagName 方法说明 传回指定名称的元素集合。 基本语法 objNodeList = xmlDocument. getElementsByTagName (tagname); 语法说明 tagname 是一个字符串,代表找到的元素卷标名称。使用tagname "*"传回文件中所有找到的元素。 使用范例 objNodeList = xmlDoc.getElementsByTagName("*"); alert(objNodeList.ite
12、m(1).xml); hasChildNodes 方法说明 如果指定的节点有一个或更多子节点,传回值为true。 基本语法 boolValue = xmlDocumentNode.hasChildNodes() ; 语法说明 如果此节点有子节点传回值为true,否则传回false 值。 使用范例 boolValue = xmlDoc.documentElement.hasChildNodes(); alert(boolValue); insertBefore 方法说明 在指定的节点前插入一个子节点。 基本语法 objDocumentNode = xmlDocum
13、entNode.insertBefore(newChild,refChild); 语法说明 newChild 是一个包含新子节点地址的对象,refChild 是参照节点的地址。新子节点被插到参照节点之前。如果refChild 参数没有包含在内,新的子节点会被插到子节点列表的末端。 使用范例 objRefNode = xmlDoc.documentElement; alert(xmlDoc.xml); objNewNode = xmlDoc.createComment("This is a comment"); xmlDoc.insertBefore(objNewNode,
14、objRefNode); alert(xmlDoc.xml); load 方法说明 表示从指定位置加载的文件。 基本语法 boolValue = xmlDocument.load(url); 语法说明 url 包含要被加载档案的URL 的字符串。假如文件加载成功,传回值即为true。若加载失败,传回值为false。 使用范例 boolValue = xmlDoc.load("LstA_1.xml"); alert(boolValue); loadXML 方法说明 加载一个XML 文件或字符串的片断。 基本语法 boolValue = xmlDocument.
15、loadXML(xmlString);
语法说明
xmlString 是包含XML 文字码的字符串。这个字符串可以包含整个文件或者只是一个文件片断。如果文件加载成功,传回值为true。假如加载失败,传回值则是false。
使用范例
xmlString = "
16、ode = xmlDocument.nodeFromID(idString); 语法说明 idString 是一个包含ID 值的字符串。符合的节点必定是ID 型态。若符合,将传回一个对象;若操作失败,则传回null。 使用范例 objDocumentNode = xmlDoc.nodeFromID("TO"); alert(objDocumentNode); parsed 方法说明 会验证该指定的节点(node)及其衍生的子节点(descendants)是否已被解析过。 基本语法 boolValue = xmlDocumentNode.parsed(); 语法说明 如
17、果全部的节点都已经被解析过了,则传回值为ture;如果有任何一个节点尚未被解析,传回值则为false。 使用范例 currNode = xmlDoc.documentElement.childNodes.item(0); boolValue = currNode.parsed(); alert(boolValue); removeChild 方法说明 会将指定的节点从节点清单中移除。 基本语法 objDocumentNode = xmlDocumentNode.removeChild(oldChild); 语法说明 oldChild 为一个包含要被移除的节点对象。 使用
18、范例 objRemoveNode = xmlDoc.documentElement.childNodes.item(3); alert(xmlDoc.xml); xmlDoc.documentElement.removeChild(objRemoveNode); alert(xmlDoc.xml); replaceChild 方法说明 置换指定的旧子节点为提供的新子节点。 基本语法 objDocumentNode = xmlDocumentNode.replaceChild(newChild,oldChild); 语法说明 newChild 为包含新子节点的对象。如果此
19、参数为null,则此旧子节点会被移除而不会被取代。oldChild 为包含旧子节点的对象。 使用范例 objOldNode = xmlDoc.documentElement.childNodes.item(3); objNewNode = xmlDoc.createComment("I''ve replaced the BCC element."); alert(xmlDoc.xml); xmlDoc.documentElement.replaceChild(objNewNode,objOldNode); alert(xmlDoc.xml); selectNodes 方法说明
20、 传回所有符合提供样式(pattern)的节点。 基本语法 objDocumentNodeList = xmlDocumentNode.selectNodes(patternString); 语法说明 patternString 为一包含XSL 样式的字符串。此方法会传回节点清单对象,包含符合样式的节点。如果没有符合的节点,则传回空的清单列表。 使用范例 objNodeList=xmlDoc.selectNodes("/"); alert(objNodeList.item(0).xml); selectSingleNode 方法说明 传回第一个符合样式的节点。 基本语法
21、 objDocumentNode = xmlDocumentNode. selectSingleNode (patternString); 语法说明 patternString 为一包含XSL 样式的字符串。此方法会传回第一个符合的节点对象,如果没有符合的节点,则传回null。 使用范例 objNode = xmlDoc.selectSingleNode("EMAIL/BCC"); alert(objNode.xml); transformNode 方法说明 使用提供的样式表来处理该节点及其子节点。 基本语法 strTransformedDocument = xmlDocu
22、mentNode.transformNode(stylesheet); 语法说明 stylesheet 为一XML 文件或是片断包含负责节点转换工作的XSL 元素。此方法会传回一包含转换结果的字符串。 使用范例 var style = new ActiveXObject("Microsoft.XMLDOM"); style.load("LstA_49.xsl"); strTransform = xmlDoc.transformNode(style.documentElement); alert(strTransform); Document 事件 ondataavailabl
23、e
事件说明
该事件会在XML 文件有效时被触发。
基本语法
该事件有下面三种处理方式
.Inline: