Hopes

Start Here..

 

为什么javascript加载xml文件,在Chrome下不成功!

为什么javascript加载xml文件,在Chrome下不成功!10

function loadDataXML(sFileName) 

var sCurrentDocPath=_getPath(document.location.href); 
sdocPath=_getFullPath(sCurrentDocPath,sFileName); 
if(gbIE5) 

xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
xmlDoc.async=true; 
xmlDoc.onreadystatechange=checkState; 
if(document.body!=null) 
xmlDoc.load(sdocPath); 

else if(gbNav6) 

xmlDoc=document.implementation.createDocument("","",null); 
xmlDoc.addEventListener("load",initializeData,false); 
xmlDoc.load(sdocPath,"text/xml"); 


这段代码在ff和ie是正常的,但是chrome报错了,Uncaught TypeError: Object #<Document> has no method 'load' 
求教各位应该怎么写才对啊?

问题补充:
dream_hanker 写道
Chrome浏览器没有实现XMLdocument.load方法,你可以换成XmlHttpRequest 
下面是一段实例代码 
Javascript代码  收藏代码
  1. try //Internet Explorer  
  2. {  
  3.  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");  
  4.  xmlDoc.async=false;  
  5.  xmlDoc.load(file);  
  6. }  
  7. catch(e)  
  8. {  
  9.  try //Firefox, Mozilla, Opera, etc.  
  10.  {  
  11.   xmlDoc=document.implementation.createDocument("","",null);  
  12.   xmlDoc.async=false;  
  13.   xmlDoc.load(file);  
  14.  }  
  15.  catch(e)  
  16.  {  
  17.   try //Google Chrome  
  18.   {  
  19.    var xmlhttp = new window.XMLHttpRequest();  
  20.    xmlhttp.open("GET",file,false);  
  21.    xmlhttp.send(null);  
  22.    xmlDoc = xmlhttp.responseXML.documentElement;  
  23.   }  
  24.   catch(e)  
  25.   {  
  26.    error=e.message;  
  27.   }  
  28.  }  
  29. }  


dream_hanker 写道
Chrome浏览器没有实现XMLdocument.load方法,你可以换成XmlHttpRequest 
下面是一段实例代码 
Javascript代码  收藏代码
  1. try //Internet Explorer  
  2. {  
  3.  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");  
  4.  xmlDoc.async=false;  
  5.  xmlDoc.load(file);  
  6. }  
  7. catch(e)  
  8. {  
  9.  try //Firefox, Mozilla, Opera, etc.  
  10.  {  
  11.   xmlDoc=document.implementation.createDocument("","",null);  
  12.   xmlDoc.async=false;  
  13.   xmlDoc.load(file);  
  14.  }  
  15.  catch(e)  
  16.  {  
  17.   try //Google Chrome  
  18.   {  
  19.    var xmlhttp = new window.XMLHttpRequest();  
  20.    xmlhttp.open("GET",file,false);  
  21.    xmlhttp.send(null);  
  22.    xmlDoc = xmlhttp.responseXML.documentElement;  
  23.   }  
  24.   catch(e)  
  25.   {  
  26.    error=e.message;  
  27.   }  
  28.  }  
  29. }  

posted on 2012-08-13 09:33 ** 阅读(1890) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

公告

你好!

常用链接

留言簿(2)

随笔档案

文章分类

文章档案

新闻档案

相册

收藏夹

C#学习

友情链接

搜索

最新评论

阅读排行榜

评论排行榜