1 <?xml version="1.0" encoding="utf-8"?> XML的编码格式
2 元素名称不能以下划线开头、不能以XML开头、不能包含空格和冒号
3 XML有且只有一个根元素
4 XML元素、属性区分大小写
5 XML中属性值用“”分隔
6 转义"<[CDATA[需要转义的文本]]>"(了解)
二 XML和HTML的区别
XML HTML
1 可扩展性 是元标记语言 可用于定义新的标记语言 具有扩展性 不具有扩展性
2 侧重点 侧重于结构化的描述数据 侧重于如何表现数据
3 语法要求 对标记的嵌套顺序、配对、大小写有严格要求 要求宽松
4 可读性维护性 结构清晰 便于阅读维护 难于阅读维护
5 数据和显示 数据描述与显示方式相分离 数据描述与显示合为一体
三 XML的应用
1 在AJAX中用XML回传数据
2 使用XML存储少量数据
3 使用XML作为表现层
4 使用XML作为数据传输的中间格式
四 使用XML描述数据
1 如果一个数据没有子元素 在XML中既可以使用属性描述 也可以使用元素描述
2 如果元素中没有内容 元素可以缩写为<xxx/>格式
五 解析
第一步:创建XMLHttpRequest对象 var xhr = new XMLHttpRequest();
第二步:调用open方法(请求方式,请求地址,是否异步) xhr.open("GET","book.xml",false);
第三步:发送请求 xhr.send();
第四步:创建dom转换 var parse = new DOMParser();
第五步:把字符串转换为DOM文档 var doc = parse.parseFromString(xhr.responseText,"text/xml");
一 xml和html中的DOM模型
1 DOM模型中,每个节点都有一系列子节点,每个子节点都有唯一父节点
2 节点包括元素节点和文本节点
3 元素节点中可以包含属性
二 使用DOM解析XML
1 步骤:
(1)创建XMLHttpRequest对象:var xhr = new XMLHttpRequest();
(2)调用open方法(请求方式,请求地址,是否异步):xhr.open("GET","book3.xml",false);
(3)发送请求:xhr.send();
(4)创建dom转换:var parse = new DOMParser();
(5)把字符串转换为DOM文档:var doc = parse.parseFromString(xhr.responseText,"text/xml");
2 JavaScript按照层次顺序解析DOM常用的方法
(1)获取文档根节点:var books = doc.documentElement
(2)获取节点下的子节点(节点数组):var nodes = books.childNodes
(3)获取第一个节点: var first = books.firstChild
(4)获取最后一个节点: var last = books.lastChild
(5)获取前一个兄弟节点: var front = last.previousSibling
(6)获取父节点: var parent = first.parentNode
(7)获取节点类型(1:元素,2:属性,3:文本): var type = first.nodeType
(8)获取节点名称: var name = first.nodeName
(9)获取节点的文本值: var value = first.firstChild.nodeValue
(10)获取属性值: var attri = first.getAttribute(‘’);
3 注!
(1)在对DOM解析时,为兼容各种不同浏览器,应该在生成XML文档时去掉标签间的空格与换行
(2)实现快速定位元素时,可以使用DOM提供的getElementsByTagName方法,根据标签名查找元素