码迷,mamicode.com
首页 > 编程语言 > 详细

javascript中的XML

时间:2014-12-15 09:00:08      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   os   使用   sp   java   

IE下创建DOM并载入XML

var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.load(url);  //载入XML文件
xmldoc.loadXML(“<root><son/></root>”);//载入XML字符串
xmldoc.documentElement //获取根元素,仅IE支持

非IE下创建DOM并载入XML

var xmldoc =document.implementation.createDocument("","",null);
xmldoc.async =true;    //异步载入
xmldoc.load(url);

第一个参数指定文件的命名空间URL,第二个参数用于指定文件元素的标签名,第三个标签用于指定文档类型对象,一般为null

var xmldoc =document.implementation.createDocument("http://www.x-do.org","root",null);

这行代码创建了表示<rootxmlns="http://www.x-do.org"/>的XML DOM

 

W3C标准的XML DOM不支持loadXML()方法。要将XML字符串解析为DOM,必须使用DOMParser对象,使用其parseFromString方法传入XML字符串表现形式:

      var xmlParser = new DOMParser();
      var xmlDom =xmlParser.parseFromString("<root />","text/xml");  //该方法返回一个XMLDOM对象
      //第二个参数text/xml也可以是application/xml,两者都用来解析XML
      //还可以是application/xhtml+xml,用来解析XHTML,只能用这三种MIME

与直接解析XML字符串相对应的获取XML字符串的方法,IE中XML DOM对象具有只读的xml属性,而W3C标准则没有相对应的属性,但是提供了可以用于同样的目的的XMLSerializer对象:

 

    var serializer= new XMLSerializer();
    var xmlStr =serializer.serializeToString(xmlDom,"text/xml");
    //xmlDom为一个XML DOM节点对象
    //而text/xml也可为application/xml
 

可以把一个函数绑定到XML文档对象的onload事件(对于W3C兼容的浏览器)或onreadystatechange事件(对于WindowsInternet Explorer)。然后,绑定的函数可以用来处理XML文档的内容。

兼容地创建XML的DOM对象

if (typeof document.implementation.createDocument != "undefined") {
      xmldoc =document.implementation.createDocument("", "", null);
      xmldoc.onload = displayData;
} else if(window.ActiveXObject) {
      xmldoc = new ActiveXObject("Microsoft.XMLDOM");
      xmldoc.onreadystatechange = function () {
             if (docObj.readyState == 4)
             displayData();
      };
}
xmldoc.load(url);
function displayData(){   }
 

load()方法只可以载入与包含JavaScript的页面存储于同一服务器上的文件,也就是说,不可以通过其他人的服务器载入XML文件

以同步模式载入文件时,JavaScript代码会等待文件完全载入后才继续执行代码;而以异步模式载入时,不会等待,可以使用事件处理函数来判断文件是否完全载入了。默认情况下,文件按照异步模式载入。要进行同步载入,只需设置async特性为false


javascript中的XML

标签:style   blog   http   io   ar   os   使用   sp   java   

原文地址:http://blog.csdn.net/u012152619/article/details/41939821

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!