首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

JS读取xml文件,为何会读取不到呢

2013-11-02 
JS读取xml文件,为什么会读取不到呢我的这个js写在了html页面上,html和xml在同一个目录,怎么报错var menus

JS读取xml文件,为什么会读取不到呢
我的这个js写在了html页面上,html和xml在同一个目录,怎么报错
var menus = xmlDoc.documentElement.getElementsByTagName("Popup_Group");
缺少对象呢


 function loadXML(xmlFile) {
            var xmlDoc;
            if (window.ActiveXObject) {//兼容IE浏览器
                alert("is ie");
                xmlDoc = new ActiveXObject('Msxml2.DOMDocument');
                xmlDoc.async = false; ; //关闭异步加载,如许可确保在文档完整加载之前,解析器不会继续执行剧本 
                xmlDoc.load(xmlFile); //告知解析器加载名为 xmlfile 的文档 
                xmlDoc = xmlDoc.documentElement; //获取XML文档中的根元素 
            }
            else if (document.implementation && document.implementation.createDocument) {
            alert("not ie");
                xmlDoc = document.implementation.createDocument("", " ", null); //兼容火狐浏览器 
                xmlDoc.async = false; //关闭异步加载,如许可确保在文档完整加载之前,解析器不会继续执行剧本 
                xmlDoc.load(xmlFile); //告知解析器加载名为 xmlfile 的文档 
                xmlDoc = xmlDoc.documentElement; //获取XML文档中的根元素 
            }
            else {
                xmlDoc = null;
            }
            return xmlDoc;
        }
        alert("start go");
        xmlDoc = loadXML("XMLPopup.xml");
        alert(xmlDoc);
        var menus = xmlDoc.documentElement.getElementsByTagName("Popup_Group");
        alert(menus);
        for (i = 0; i < menus.length; i++) {
            var category = menus[i].childNodes[0].text;
            
            var model = menus[i].childNodes[1].text;
            
            
        }


我的xml是

<?xml version="1.0" encoding="utf-8" ?>
<Popup>
  <Popup_Group>
    <NowURL>1111111</NowURL>
    <Popup_Image>22222222222</Popup_Image>
  </Popup_Group>
  <Popup_Group>
    <NowURL>333333333</NowURL>
    <Popup_Image>444444444</Popup_Image>
  </Popup_Group>
</Popup>


[解决办法]
javascript 不能直接读取物理路径的xml文件,应该是javascript通过ajax请求, 然后server端返回xml字符串,再通过javascript解析。
[解决办法]
jquery读取xml 例子http://hi.baidu.com/wenlixmh/item/5ea7e0f7890b4ebe30c1993f
[解决办法]
js 运行的是本地文件。是读取不到服务器的文件的! 你必须写ajax请求才可以!。
或者页面后台加载xml赋值给js

热点排行