已被阅读 1203 次 | 文章分类:html | 2018-05-08 09:41
Xml(Extensive Markup Language)与Html(Hypertext Markup Language)是相辅相成的,也可以说Xml是Html的补充,Html侧重数据内容的展示,Xml侧重数据内容的传输,因为及其简单的结构,XML成为了是各种应用程序之间进行数据传输的最常用的工具
一:Xml与Html设计宗旨不同
Html用来显示数据,注重数据的外观表现形式 Xml用来传输和存储数据,其焦点是数据的内容。
二:Xml与Html语法不同
HTML不是所有标签都成对出现,xml要求标签必须成对,即要有开始和结束标签 HTML的标签是符合w3c标准已定义的标签,xml的标签没有被预定义,需要自定义具有描述意义的标签。
三:Xml文件实例
<note>
<message>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</message>
<message>
<to>pop</to>
<from>lily</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</message>
</note>
四:Xml文件解析,以上面的实例文件为例
所有现代浏览器都内建了供读取和操作XML的XML解析器。解析器把XML转换为XML DOM 对象 - 可通过 JavaScript 操作的对象
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "note.xml", false);
xmlhttp.send();
var xmlDoc = xmlhttp.responseXML;
var result=xmlDoc.getElementsByTagName("to")[1].childNodes[0].nodeValue
console.log(result); //pop
1.第一行实例化一个解析器对象
2.第二行初始化 HTTP 请求参数,例如 URL 和 HTTP 方法,但是并不发送请求。
3.第三行发送 HTTP 请求,使用传递给 open() 方法的参数,以及传递给该方法的可选请求体。
4.第四行对请求的响应,解析为 XML 并作为 Document 对象返回
5.第五行通过javascript操作xmldom对象获取数据,获取第二个to元素的第一个节点的节点值
五:通过微软解析器解析xml文档
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.load("note.xml");
1.上面代码的第一个行创建一个空的微软 XML 文档对象。 2.第二行关闭异步加载,这样确保在文档完全加载之前解析器不会继续脚本的执行。 3.第三行告知解析器加载名为 "note.xml" 的 XML 文档。
六:FF与Opera浏览器解析Xml
var xmlDoc=document.implementation.createDocument("","",null);
xmlDoc.async="false";
xmlDoc.load("note.xml");
不过目前浏览器不支持document.load()方式解析文件,推荐使用DOM XmlHttpRequest.
QQ:3410192267 | 技术支持 微信:popstarqqsmall
Copyright ©2017 xiaobaigis.com . 版权所有 鲁ICP备17027716号