1、XML DOM 是用于获取、更改、添加或删除 XML 元素的标准。
2、节点(XML 文档中的每个成分都是一个节点):
        整个文档是一个文档节点;
        每个XML元素是一个元素节点;
        包含在XML元素中的文本是文本节点;
        每一个XML属性是一个属性节点;
        注释是注释节点;

3、加载XML文档

    if (window.XMLHttpRequest)
{
// IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
xhttp=new XMLHttpRequest(); //创建XMHHTTP对象
}
else
{
// IE6, IE5 浏览器执行代码
xhttp=new ActiveXObject("Microsoft.XMLHTTP");//创建XMHHTTP对象
}
xhttp.open("GET","books.xml",false); //打开XMLHTTP对象
xhttp.send(); //向服务器发送请求
xmlDoc=xhttp.responseXML; //设置响应为XML DOM对象

4、加载XML字符串

    if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(text,"text/xml");
}
else
{
// Internet Explorer
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML(text);
}

5、XML DOM Node对象

    属性
(xmlDoc文档节点,documentElement根节点)
nodeName 节点的名称;元素的标签名,属性的是属性名,文本的是#text,文档的是#documennt;
nodeValue 节点的值;元素是undefined,文本是本身,属性是属性值;
nodeType 节点类型;元素1,属性2,文本3,注释8,文档9;
parentNode 节点的父节点;
childNode 节点的子节点;
childNodes 节点的子节点列表;
lastChild 节点的最后一个子节点;
firstChild 节点的第一个子节点
neSibling 下一下同级节点
previousSibling 上一个同级节点
attributes 节点的属性节点;
length 节点列表的长度,即节点数量
baseUri 节点的绝对基准URI
localName 节点名称的本地部分;
namespaceURI 节点命名空间URI;
ownerDocument 节点根元素;
prefix 设置或返回节点命名空间前缀;
textContent 返回节点及其子节点的文本内容;
对象方法
x.getElementsByTagName(name) 获取带有指定标签名称的所有元素;多个同级节点用[n]数组位进行定位区分;
x.getAttributeNode(name) 获取name的属性;
x.setAttributeNode(node) 改变节点属性;
x.setAttribute(attr,str) 改变或新建属性;
xmlDoc.createAttribute(name) 创建属性节点;后用setAttributeNode将节点添加到相应位置
x.appendChild(node) 向x插入子节点;
x.removeChild(node) 向x删除子节点;删除节点本身x.parentNode.removeChild(x);
x.replaceChild() 替换子节点;
xmlDoc.createElement(name) 创建元素节点,后需要用appendChild(node)来添加到节点树中去;
xmlDoc.createTextNode(name) 创建文本节点;后需要用appendChild(node)来添加到节点树中去;
xmlDoc.createCDATASection(name) 创建CDATA Section节点;
xmlDoc.createComment(str) 创建注释节点,后需要用appendChild(node)来添加到节点树中去;
x.insertData(offset,str) 向文本节点添加文本,offset为开始添加位置;
x.cloneNode(bool) 复制节点,参数用于指示被克隆的节点是否包括原节点的所有属性和子节点;
x.compareDocumentPosition(node) 比较两个节点的文档位置;
x.hasAttributes() 返回节点是否拥有某属性;
x.hasChildNodes() 返回节点是否拥有子节点;
x.insertBefore() 在已有节点前插入节点;
x.isEqualNode() 比较两个节点是否相等;
x.isSameNode() 检查两个节点是否是同一个节点;
x.lookupNamespaceURI() 返回匹配指定前缀的命名空间URI;
x.lookPrefix() 返回匹配指定命名空间URI的前缀;
x.getFeature(feature,version) 返回DOM对象,此对象可执行带有指定特性和版本的专门的API;
x.getUserData(key) 返回与节点上键关联的对象;
x.isSupported(feature,version) 返回指定特性是否在此节点上得到支持;
x.setUserData(key,data,handler) 把对象关联到节点上的键;
x.normalize() 把节点下的所有文本节点放置到一个“标准”的格式中;

6、XML DOM Document对象

    属性
nodeName 节点名称;
nodeType 节点类型;
nodeValue 节点值;
async 规定XML文件的下载是否应当被异步处理;
childNodes 返回文档的子节点的列表;
doctype 返回与文档相关的文档类型;
documentElement 返回文档根节点;
documentURI 设置或返回文档的位置;
domConfig 返回normalizeDocument() 被调用时所使用的配置;
firstChild 返回文档的第一个子节点;
lastChild 返回文档的最后一个子节点;
implementation 返回处理该文档的DOMImplementation对象;
inputEncoding 返回文档的编码方式;
strictErrorChecking设置或返回是否强制进行错误检查;
xmlEncoding 返回文档的XML编码;
xmlVersion 设置或返回文档的XML版本;
xmlStandalone 设置或返回文档是否为standalone;
方法
adoptNode(sourceenode) 从另一个文档向本文档选定一个节点,然后返回被选节点;
createAttribute(name) 创建带有指定名称的属性节点;
createAttributeNS(uri,name) 创建带有指定名称和命名空间的属性节点;
createCDATASection() 创建CDATA区段节点;
createComment() 创建注释节点;
createDocumentFragment() 创建空的DocumentFragment对象,并返回此对象;
createElement() 创建元素节点;
createElementNS() 创建带有指定命名空间的元素节点;
createEntityReference(name) 创建EntityReference对象,并返回此对象;
createProcessingInstruction() 创建ProcessingInstruction对象,并返回此对象;
createTextNode() 创建文本节点;后需要用appendChild;
getElementById(id) 返回指定Id属性的元素,如果不存在则返回null;
getElementByTagName() 返回带有指定名称的所有元素的NodeList;
getElementByTagNameNS() 返回带有指定名称和命名空间的所有元素的NodeList;
importNode(nodetoimport,deep) 从另一个文档向本文档选定一个节点。该方法创建源节点的一个副本。如果deep为true,则将导入指定节点的所有子节点,否则只导入节点本身;
normalizeDocument() 把节点下的所有文本节点放置到一个“标准”的格式中;
renameNode() 重命名元素或属性节点;

7、XML DOM Element对象

因为Element也是一种节点,所以它可以继承Node对象的属性和方法;以下是除Node所具有外的属性和方法。

    属性
tagName 返回元素的名称;
schemaTypeInfo 返回与元素相关联的类型信息;
方法
getAttributeNS() 返回带命名空间的属性值;
getAttributeNodeNS() 以attribute对象返回带命名空间的属性节点;
getElementByTagNameNS() 返回匹配的带有命名空间的节点及子节点的NodeList;
setAttributeNS() 添加新的带命名空间的属性;
setAttributeNodeNS() 添加新的带命名空间属性节点;
hasAttributeNS() 返回元素是否拥有匹配指定名称和命名空间的属性;
removeAttribute() 删除指定属性;
removeAttributeNS() 删除指定带有命名空间的属性;
removeAttributeNode() 删除指定的属性节点;

8、XML DOM Attr对象

    属性
name 属性的名称;
localName 属性的名称本地部分;
namespaceURI 属性命名空间URI;
nodeName 节点名称;
nodeType 节点类型;
nodeValue 节点值;
baseURI 返回属性的绝对基准URI;
isId 返回属性是否是Id类型的bool值;
ownerDocument 返回属性所属的根元素;
ownerElement 返回属性所附属元素的节点;
prefix 命名空间前缀;
schemaTypeInfo 与属性相关联的类型信息;
specified 如果属性值被设置在文档中,返回true,否则false;
textContent 属性的文本内容;
value 属性的值;

9、XML DOM Text    对象

    属性
data 元素或属性的文本;
length 元素或属性的文本长度;
wholeText 以文档的顺序向此节点返回相邻文本节点的所有文本;
isElementContentWhitespace 判断文本节点是否包含空白字符; 方法
appendData() 向节点追加数据;
deleteData() 从节点删除数据;
insertData() 向节点插入数据;
replaceData() 替换节点数据;
replaceWholeText() 用指定文本来替换此节点及所有相邻的文本节点;
splitText() 在指定偏移处将此节点拆分为两个节点,同时返回包含偏移处之后的文本的新节点;
substringData() 从节点提取数据;

10、XML DOM CDATASection对象

    属性
data 节点文本;
length 长度;
方法
appendData() 向节点追加数据;
deleteData() 从节点删除数据;
insertData() 向节点插入数据;
replaceData() 替换节点数据;
splitText() 在指定偏移处将此节点拆分为两个节点,同时返回包含偏移处之后的文本的新节点;
substringData() 从节点提取数据;

11、XML DOM Comment对象

    属性
data 节点文本;
length 长度;
方法
appendData() 向节点追加数据;
deleteData() 从节点删除数据;
insertData() 向节点插入数据;
replaceData() 替换节点数据;
splitText() 在指定偏移处将此节点拆分为两个节点,同时返回包含偏移处之后的文本的新节点;
substringData() 从节点提取数据;

12、XMLHttpRequest对象

    属性
responseXML 作为XML数据响应数据;
responseText 返回作为一个字符串的响应数据;
status 返回状态数;
statusText 返回状态文本;
onreadystatechange 存储函数,在每次readyState属性变化时被调用;
readyState 存放了XMLHttpRequest的状态,0请求未初始化,1服务器建立连接,2收到的请求,3处理请求,4请求完成和响应准备就绪;
方法
send(string) 发送请求到服务器,sttring仅用于POST请求;
abort() 取消当前请求;
open(method,url,async,uname,pswd) 规定请求类型;
getResponseHeader() 返回指定的头信息;
getAllResponseHeaders() 返回头信息;
setRequestHeader() 把值添加到要发送的头文件;

XML DOM(Document Object Model)的更多相关文章

  1. 认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法。元素、属性和文本的树结构(节点树)。

    认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码 ...

  2. 文本对象模型(Document Object Model)

    本文内容: 1. 概述 2. DOM中的节点类型 3. DOM节点的选取 4. 存取元素属性 5.DOM元素的增删 6.小结 ★ 概述 文本对象模型(DOM)是一个能够让程序和脚本动态访问和更新文档内 ...

  3. DOM(Document Object Model)

    DOM(Document Object Model):    结点的概念:整个文档就是由层次不同的多个节点组成,可以说结点代表了全部内容.    结点类型        1.元素结点 对于元素结点的n ...

  4. DOM (文档对象模型(Document Object Model))

    文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口.在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象 ...

  5. BOM—浏览器对象模型(Browser Object Model)

     1,javascript   组成部分: 1.ECMAscript(核心标准):    定义了基本的语法,比如:if for 数组 字符串 ... 2.BOM  : 浏览器对象模型(Browser ...

  6. BOM(Broswer Object Model)

    BOM(Broswer Object Model) 方法:    框窗     1.警告框    window.alert("msg");     2.确认框     window ...

  7. (3)选择元素——(2)文档对象模型(The Document Object Model)

    One of the most powerful aspects of jQuery is its ability to make selecting elements in the DOM easy ...

  8. BOM (Browser Object Model) 浏览器对象模型

    l对象的角色,因此所有在全局作用域中声明的变量/函数都会变成window对象的属性和方法; // PS:尝试访问未声明的变量会抛出错误,但是通过查询window对象,可以知道某个可能未声明的对象是否存 ...

  9. 浏览器对象模型BOM(Browser Object Model)

    1.结构 BOM是Browser Object Model的缩写,简称浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是w ...

随机推荐

  1. nova-virt与libvirt

    源码版本:H版 nova通过nova/virt/driver.py中的ComputeDriver对底层虚拟化技术进行抽象,不同的虚拟化技术在nova/virt下有不同的目录,里面均有driver.py ...

  2. windows下libcurl与zlib和ssl共同编译

    下载了curl 7.37,在project里有各个版本VS对应的项目文件,我们选择合适的打开即可以编译,根据不同的项目配置输出想要的库,比如可以切换多种SSL库,dll/lib,debug/relea ...

  3. OpenCV---模板匹配matchTemplate

    作用有局限性,必须在指定的环境下,才能匹配成功,是受到很多因素的影响,所以有一定的适应性 模板匹配是一种最原始.最基本的模式识别方法,研究某一特定对象物的图案位于图像的什么地方,进而识别对象物,这就是 ...

  4. centos6.5 mqtt安装

    CentOs 6.5 MQTT 安装部署 所需安装包: libwebsockets-v1.6-stable.tar.gz,mosquitto-1.4.8.tar.gz 1.安装依赖 # yum -y ...

  5. IBatisNet+Oracle.ManagedDataAccess打造无需安装oracle客户端和ODP即可连接oracle数据库

    库环境: Oracle.ManagedDataAccess 版本:4.122.1.0 IBatisNet  版本:1.6.2 其实很简单的,只需在驱动配置那里添加上Oracle.ManagedData ...

  6. thinkphp 5 where 组合条件map数组or

    if($inviterId>0) { $arr = Db::table("tablename")-> where("pid=$inviterId") ...

  7. PHP扩展开发--02.包裹第三方的扩展

    背景 也许最常见的PHP扩展是那些包裹第三方C库的扩展.这些扩展包括MySQL或Oracle的数据库服务库,libxml2的 XML技术库,ImageMagick 或GD的图形操纵库. 在本节中,我们 ...

  8. linux平台 PHP 实现 word转pdf的艰难历程...

    1.网上搜索资料 无非是 openoffice + PHP的com组件 然而试了很多次 都不可靠 2.后来找到 openoffice + jodconverter(需java环境) 一.安装openo ...

  9. 24、CSS定位

    CSS定位方法 driver.find_element_by_css_selector() 1.CSS定位常用策略(方式) 1.id选择器 说明:根据元素id属性来选择 格式:#id 如:#userA ...

  10. docker使用现有容器生成新的镜像

    /*运行docker run后 --则进入该容器里了 我们做一些变更,比如安装一些东西 ,然后针对这个容器进行创建新的镜像 */ 基本形式: docker commit -m "change ...