我现在使用default.aspx 来读取xml文件,但是指定目录就拒绝访问,
不指定目录就是空文件。
    <script language="javascript" type="text/javascript" >
    function loadXML(xmlFile) {
        var xmlDoc;
        if (window.ActiveXObject) {
            xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
            xmlDoc.async = false;
            xmlDoc.load(xmlFile);
        }
        else if (document.implementation && document.implementation.createDocument) {
            xmlDoc = document.implementation.createDocument("", "", null);
            xmlDoc.async = false;
            xmlDoc.load(xmlFile);
        } else {
            alert('您的浏览器不支持该系统脚本!');
        }
        return xmlDoc;
    }   
alert(9);
        var xmlDoc = loadXML("myfile.xml"); 
        //var xmlDoc = loadXML("E:\TEST\myfile.xml"); 
        //xmlDoc.load("myfile.xml");
        
        alert(xmlDoc);
    </script>
文件路径放在和 default.aspx 相同的路径。
希望大侠给予解释为什么不能读取文件。

解决方案 »

  1.   

    看到你说default.aspx, 那么这个页面肯定是访问的一段服务器URL来打开的吧, 那么他的域权限应该是Internet的权限, 而使用前台JS打开本地文件的权限是需要本地权限的, 所以是不可能实现的, 不然你随便访问一个网站, 人家网站还不能把你的电脑里的文件给看光了啊不过有另外的办法可以解决:
    1. 如果你的网站只是给你一个人使用, 并且可以不使用动态技术的话, 就是说不使用ASPX, 那么就做成一个静态的HTML, 直接双击打开, 这样就是本地权限了, 再打开IE只会弹一个安全提示, 然后就能访问了
    2. 把你的网站加入到信任站点, 并把安全设置到最低
    3. 在服务器ASPX中就将XML读取好, 然后作为字符串传给前台的JS, 这样前台JS就不用去读取那个文件了