解析XML文件(一)

目前大多浏览器都内置了用于读取和操作XML的解析器,使用XML解析器可以将XML文档读取到内存中,并可以将其转换成javaScript中的对象。

 

[IE浏览器中解析XML文件]

 

1.创建一个XMLDOM对象,可以用来加载XML文件

 var xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 

2.加载方式如下,浏览器将xml文件的内容读取到内存中

 xmlDoc.load("student.xml");

 

**如果XML文件中的内容比较大时,可以在加载[load()]之前设置加载xml文件的方式:

   xmlDoc.async = false;

  async属性值为false,则使用同步方式加载xml文件,即在该文件加载完毕之前,javaScript是不会进行其它操作的;如果为  true,则将会使用异步的方式加载xml文件,若xml文件比较大,则可能会出现在该文件还未加载完毕,javaScript就会执行到读取xml内容的代码的情况

 

********总结*******

var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");

xmlDoc.async = false;

xmlDoc.load("student.xml");

document.write("返回根元素名称:"+xmlDoc.documentElement.nodeName);

 

[其它浏览器中解析XML文件]

var xmlDoc = document.implementation.createDocument("","",null);

**implementation属性可以返回与当前文档相关联的DOMImplementation接口,它是一个特殊的用于提供服务的接口,可以控制操作文档.DOMImplementation接口中的方法有:hasFeature()、createDocumentType()、createDocument().其中,createDocument()可以创建一个指定类型的xml文档对象。

 

语法: createDocument(qualifiedName,publicId,systemId)

qualifiedName-->用于创建文档元素的命名空间url

publicId-->要创建的文档元素的限定名称

systemId-->要创建的文档类型,可以为null

 

 

*********总结********

var xmlDoc = document.implementation.createDocument("","",null);

xmlDoc.async = false;

 xmlDoc.load("student.xml");

 document.write("返回根元素名称:"+xmlDoc.documentElement.nodeName);

 

 [跨浏览器解析XML文件的方法]

 var xmlDoc = null;

 if(window.ActiveXObject){

        xmlDoc = new ActiveXObject("Microsoft.XMLDOM");

  }else{

      try{

         xmlDoc = document.implementation.createDocument("","",null);

      }catch(e){} } //判断是否已经调用了XML解析器 if(xmlDoc != null){ xmlDoc.async = false; xmlDoc.load("student.xml"); ...... }

else{ alert("您的浏览器不支持XML解析器!"); }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值