读取返回的XML文档(有跨域的问题)
..........
http_request = new ActiveXObject("Microsoft.XMLHTTP");
..........
IE
var xml = http_request.responseXML;
var nodes = xml.getElementsByTagName("msg");
for(i=0;i<nodes .length;i++)
{
var UtorName = nodes [i].selectSingleNode("UtorName").text;
..........................
}
/
读取XML文档
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false"
xmlDoc.load("OlyCity.xml");
.............................
完全示例
- var xmlDoc;
- if(window.ActiveXObject)
- {
- //获得操作的xml文件的对象
- xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
- xmlDoc.async = false;
- xmlDoc.load("baidu.xml");
- if(xmlDoc == null)
- {
- alert('您的浏览器不支持xml文件读取,于是本页面禁止您的操作,推荐使用IE5.0以上可以解决此问题!');
- window.location.href='/';
- }
- var nodes = xmlDoc.documentElement.childNodes;
- for(var i=0;i<nodes.length;i++)
- {
- var imageUrl=nodes[i].selectSingleNode("data/display/image").text;
- if(imageUrl=="")
- {document.write("图片为空!<br>")}
- else
- {
- var image=new Image();
- image.src=imageUrl;
- if(image.width > 180 || image.height > 180)
- {document.write(nodes[i].selectSingleNode("loc").text+"<br>")}
- }
- }
- document.write("over!")
- }
- else
- {
- var xmlDoc=document.implementation.createDocument("", "", null);
- xmlDoc.async=false;
- xmlDoc.load("baidu.xml");//dom就是xml对象了。
- if(xmlDoc == null)
- {
- alert('您的浏览器不支持xml文件读取,于是本页面禁止您的操作,推荐使用IE5.0以上可以解决此问题!');
- window.location.href='/';
- }
- var nodes = xmlDoc.documentElement.childNodes;
- for(var i=0;i<nodes.length;i++)
- {
- //var imageUrl=nodes[i].getElementsByTagName("data")[0].childNodes[0].childNodes[6].firstChild.nodeValue;
- //alert(imageUrl)
- //第二种方法
- var imageUrl=nodes[i].getElementsByTagName("data")[0].childNodes[0].getElementsByTagName("image")[0].textContent;
- //alert(imageUrl)
- if(imageUrl=="")
- {document.write("图片为空!<br>")}
- else
- {
- var image=new Image();
- image.src=imageUrl;
- if(image.width > 180 || image.height > 180)
- {document.write(nodes[i].getElementsByTagName("loc")[0].firstChild.nodeValue+"<br>")}
- }
- }
- document.write("over!")
- }