XMl学习笔记01
来源:互联网 发布:tidb java 编辑:程序博客网 时间:2024/06/05 08:05
01-什么是XML
XML 指可扩展标记语言(EXtensible Markup Language)
ML 的设计宗旨是传输数据,而非显示数据。
XML 被设计为具有自我描述性。
XML 是 W3C 的推荐标准。
XML 仅仅是纯文本。
HTML 旨在显示信息,而 XML 旨在传输信息,XML 是对 HTML 的补充。(区别)
对 XML 最好的描述是:XML 是独立于软件和硬件的信息传输工具。
02-XML语法规则
所有 XML 元素都须有关闭标签
<p>这 是 错 误 的~ <p>这 是 正 确 的~</p>
XML 标签对大小写敏感
<message>这是正确的。</message> <Message>这是错误的。</message>
XML 必须正确地嵌套
<b><i>这 是 正 确 的~</i></b>
XML 文档必须有根元素
<root> <child> <subchild>这 是 正 确 的~</subchild> </child></root>
XML 的属性值须加引号
<note date="08/08/2008"> <to>George</to> <from>John</from></note>
03-实体引用
在 XML 中,有 5 个预定义的实体引用:
⁢ < 小于> > 大于& & 和号' 单引号" 双引号
04-验证 XML 文档
通过 DTD 验证的 XML 是“合法”的 XML。
W3C 支持一种基于 XML 的 DTD 代替者,它名为 XML Schema。
05-XML XSLT
注释:使用 CSS 格式化 XML 不是常用的方法,更不能代表 XML 文档样式化的未来。W3C 推荐使用 XSLT。
XSLT 是首选的 XML 样式表语言。
XSLT (eXtensible Stylesheet Language Transformations) 远比 CSS 更加完善。
<?xml version="1.0" encoding="ISO-8859-1"?> <?xml-stylesheet type="text/xsl" href="simple.xsl"?> <breakfast_menu> <food> <name>Belgian Waffles</name> <price>$5.95</price> <description> two of our famous Belgian Waffles </description> <calories>650</calories> </food> </breakfast_menu>
在使用 XSLT 来转换 XML 时,不同的浏览器可能会产生不同结果。为了减少这种问题,可以在服务器上进行 XSLT 转换。
06-XMLHttpRequest对象
XMLHttpRequest 对象用于在后台与服务器交换数据。
用途:
在不重新加载页面的情况下更新网页
在页面已加载后从服务器请求数据
在页面已加载后从服务器接收数据
在后台向服务器发送数据
所有现代的浏览器都支持 XMLHttpRequest 对象。
创建 XMLHttpRequest 对象的语法:
var xmlhttp=new XMLHttpRequest();
老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
通过 XML HTTP 把一个 textfile 载入一个 div 元素中
通过 XML HTTP 进行 HEAD 请求
通过 XML HTTP 进行指定的 HEAD 请求
通过 XML HTTP 列出 XML 文件中的数据
07-XML解析器
所有现代浏览器都有读取和操作 XML 的内建 XML 解析器。
解析器把 XML 载入内存,然后把它转换为可通过 JavaScript 访问的 XML DOM 对象。
注释:当我们谈及 XML 解析,我们常常会使用有关 XML 元素的术语:节点。
解析 XML 文档
下面的代码片段把 XML 文档解析到 XML DOM 对象中:
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); }else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }xmlhttp.open("GET","books.xml",false);xmlhttp.send();xmlDoc=xmlhttp.responseXML;
其他方法 1:通过微软的 XML 解析器来加载 XML
微软的 XML 解析器内建于 Internet Explorer 5 以及更高的版本中。
下面的 JavaScript 片段把一个 XML 文档载入解析器中:
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");xmlDoc.async="false";xmlDoc.load("note.xml");
1.上面代码的第一个行创建一个空的微软 XML 文档对象。
2.第二行关闭异步加载,这样确保在文档完全加载之前解析器不会继续脚本的执行。
3.第三行告知解析器加载名为 “note.xml” 的 XML 文档。
其他方法 2:在 Firefox 及其他浏览器中的 XML 解析器
var xmlDoc=document.implementation.createDocument("","",null);xmlDoc.async="false";xmlDoc.load("note.xml");
1.上面代码的第一个行创建一个空的 XML 文档对象。
2.第二行关闭异步加载,这样确保在文档完全加载之前解析器不会继续脚本的执行。
3.第三行告知解析器加载名为 “note.xml” 的 XML 文档。
08-解析 XML 字符串
下面的 JavaScript 代码片段把 XML 字符串解析到 XML DOM 对象中(把字符串 txt 载入解析器):
txt="<bookstore><book>";txt=txt+"<title>Everyday Italian</title>";txt=txt+"<author>Giada De Laurentiis</author>";txt=txt+"<year>2005</year>";txt=txt+"</book></bookstore>";if (window.DOMParser) { parser=new DOMParser(); xmlDoc=parser.parseFromString(txt,"text/xml"); }else // Internet Explorer { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="false"; xmlDoc.loadXML(txt); }
注释:Internet Explorer 使用 loadXML() 方法来解析 XML 字符串,而其他浏览器使用 DOMParser 对象。
注释:loadXML() 方法用于加载字符串(文本),load() 用于加载文件。
跨域访问
出于安全方面的原因,现代的浏览器不允许跨域的访问。
- XML学习笔记01
- XMl学习笔记01
- xml学习笔记 1. XML
- XML Base学习笔记
- XML学习笔记
- xml学习笔记---1
- xml学习笔记---2
- XML学习笔记
- XML学习笔记(三)
- XML学习笔记
- xml学习笔记一
- XML学习笔记
- XML schema学习笔记
- XML学习笔记
- XML Schema学习笔记
- XML语法---学习笔记
- XML元素---学习笔记
- XML属性---学习笔记
- iOS 给UILabel增加超链接
- USACO--2.4Cow Tours
- 程序员英文休闲阅读
- CentOS 6安装Oracle 11gR2数据库
- 4万左右二手车推荐:2007款本田思迪怎么样
- XMl学习笔记01
- C++学习笔记:C++排序函数
- String格式化问题
- 正方形顺时针旋转
- 文件描述符和文件指针的区别
- 随手记
- 浅谈网络游戏的设计--服务器端编程
- 设计模式-模板方法模式(templateMethod pattern)
- gdb使用多进程多线程2