XML DOM对象
来源:互联网 发布:新浪博客怎么绑定域名 编辑:程序博客网 时间:2024/05/17 22:10
XML DOM对象
Microsoft的XML解析器是与IE5及IE5以上版本的浏览器整合在一起的COM组件,安装了IE浏览器,就可以使用解析器解析XML文档了。但MSXML现在已经有五个不同的版本,所以在创建XMLDOM的时候最好使用工厂模式。
function createDocument()
{
var aVersions = [
"MSXML2.DOMDocument.5.0",
"MSXML2.DOMDocument.4.0",
"MSXML2.DOMDocument.3.0",
"MSXML2.DOMDocument",
"Microsoft.XmlDom"];
for(var i=0;i < aVersions.length;i++)
{
try{
var XmlDoc = new ActiveXObject(aVersions[i]);
return XmlDoc;
}
catch(oError){}
}
throw new Error("MSXML is not installed");
}
var XmlDoc = createDocument();
创建完XML文档对象后,就要将XML文档载入解析器。例:
(1)使用load()方法载入一个XML文档
var xmlDoc = new createDocument();
xmlDoc.async = "false"; //表示非异步载入,确保XML解析器在把XML文档完全载入以前不会对XML文档进行解析
xmlDoc.load("booklist.xml");
(2)使用loadXML()方法载入XML代码片段
var strtemp = "Ajax$5.95";
strtemp += "Foundations of Ajax.";
strtemp += "
strtemp += "Introduction of Ajax Patterns.";
xmlDoc.loadXML(strtemp);
XML DOM对象属性
属性
描述
async
设置或获取是否允许以异步方式载入XML文档
attributes
获取节点的属性列表
childNodes
获取节点的子节点列表
doctype
获取与文档关联的文档类型声明,不包含声明则返回null
documentElement
获取在根节点中包含数据的对象,如果文件中不具有唯一根节点,返回null
firstChild
获取节点中的首个子节点,如果不具有子节点则返回null
lastChild
获取节点中的末个子节点,如果不具有子节点则返回null
nextSibling
获取节点所在的节点列表中下一个节点
nodeName
获取节点的名称
nodeType
获取节点的类型,(参见下表)
nodeValue
获取文本节点值
ondataavailable
设置处理ondataavailable事件的函数
onreadystatechange
获取处理onreadystatechange事件的函数
parentNode
获取节点的父节点,如果不具有父节点则返回null
parseError
获取DOM解析错误对象,此对象描述最后解析错误的信息
previousSibling
获取节点所在的节点列表中上一个节点
readyState
获取XML文档的载入状态。状态值:
0-UNINITIALIZED:XML DOM对象已声明,但未初始化
1-LOADING:文档载入中,但未开始解析
2-LOADED:部分文档已经加载且进行解析,但对象模型尚未生效
3-INTERACTIVE:对已加载的部分文档有效,此时对象模型是有效但只读的
4-COMPLETED:文件已完全加载,加载成功
url
传回最近一次加载XML文档的URL。若文档不由外部载入则返回null
validateOnParse
告诉解析器文件是否有效
xml
获取节点的XML描述和所有的子节点
Node节点类型说明
Document
文件阶层中的根节点(DOM树的根节点)
Element
一个元素
Attr
一个属性,注意:属性与其它节点类型不同,它们不是同一父节点的子节点
ProcessingInstruction
处理指令
Comment
注释
Text
处于一个元素或一个属性中的文本内容(字符数据)
CDATASection
一块包含字符的文本区
Entity
实体
XML DOM对象方法
abort()
取消一个正在执行的异步下载
appendChild(newNode)
在当前节点末端添加一个子节点newNode
cloneNode(flag)
复制当前节点,flag为true,复制整个节点,为false则只复制该节点及属性
createAttribute(attrName)
创建属性attrName
createCDATASection(data)
创建包含指定数据的CDATA
createComment(data)
创建包含指定数据的注释
createDocumentFragment()
创建空的文档片断
createElement(tagName)
创建元素tagName
createEntityReference(name)
创建名称为name的实体参照
createNode(type,name[,nsURL])
创建新节点,type为节点类型,name为节点名称,nsURL为命名空间
createProcessingInstruction(
target,data )
创建处理指令,target为目标、名称或处理指令字符串,data为处理指令值
createTextNode(data)
创建文本节点,data为内容
getElementsByTagName(tagName)
获取标记为tagName的元素集合
hasChildNodes()
检查节点是否含有子节点
insertBefore(newNode,theNode)
在节点theNode前插入新节点newNode
load(url)
载入url指定的一个XML文档
loadXML(xmlString)
载入xmlString指定的XML代码片段
nodeFromID(id)
取得ID为id的节点
parsed()
检查节点包括其子节点是否已被解析
removeChild(theNode)
删除节点的子节点theNode
replaceChild(newNode,oldNode)
以节点newNode替换节点oldNode
selectNodes(patternString)
取得所有匹配模式patternString的节点
selectSingleNode(patternString)
取得首个匹配模式patternString的节点
transformNode(styleSheet)
以样式表styleSheet来处理节点及其子节点
XML DOM事件
Ondataavailable
在XML文档有效时被触发
Onreadystatechange
在readyState属性值改变时被触发
- XML DOM对象
- XML DOM对象
- javascript,XML DOM,对象
- XML DOM - DOMParser 对象
- XML DOM - XMLHttpRequest 对象
- XML DOM HTMLCollection 对象
- XML DOM - Node 对象
- XML DOM - Element 对象
- XML-DOM XMLHttpRequest 对象
- XML DOM Document 对象
- XML DOM - XMLHttpRequest 对象
- DOM XML 对象认识
- XML DOM Event 对象
- XML DOM Element 对象
- XML DOM Node 对象
- XML DOM HTMLCollection 对象
- javascript之XML DOM对象
- javascript之XML DOM对象
- virtualPC 2007下DOS系统实现共享文件夹
- 写一个你自己的编辑器 - 第1章:前言
- 细心学VC之一---在系统菜单中添加菜单项(一)
- linux下Oracle自动启动与停止(一)
- 你在朋友圈中的角色?[英国皇家心理测验]zz
- XML DOM对象
- Linux下与字符处理有关的编程小结
- 一个DOS小工具DOSHERE的原码(摘录)
- xml模板导出Excel
- 我在研究院的新兵训练
- 批处理文件教程
- Yacc 与 Lex 快速入门
- resin2.0和3.0的屏蔽文件列表方式
- SQL Server数据库实时监测工具发布0.0.1