使用 AJAX 修改文本内容,谷歌报错,火狐正常

火狐正常
clipboard.png

在火狐中正常,在谷歌和360会报错,也没有改变内容,怎么解决
clipboard.png

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title> ajax读取txt文本内容</title>
<script type="text/javascript">
function startRequest(){
    var xmlHttp;
    if(window.ActiveXObject){
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else if(window.XMLHttpRequest){
        xmlHttp = new XMLHttpRequest();
    }  
    xmlHttp.onreadystatechange=function(){    
        if (xmlHttp.readyState==4 && xmlHttp.status==200)
        {            
            document.getElementById("myDiv").innerHTML=xmlHttp.responseText;            
        }        
    }
     xmlHttp.open("GET","test.txt",true);
    xmlHttp.send();   
}

</script>
</head>
<body>
<div id="myDiv"></div>
<button type="button" onclick="startRequest()">修改内容</button>

</body>
</html> 
阅读 3.2k
5 个回答

大部分浏览器由于安全策略不允许读取本地文件,请在web服务器上运行页面

发布到服务器去运行

Tomcat、IIS、Apache、Nginx……你觉得哪个你熟悉点就用哪个

Chrome安全策略限制了,提供2种方法:
1.搭建一个服务器
2.修改Chrome配置,使chrome支持跨域访问,教程

在chrome快捷方式的目标后加 --disable-web-security。
注意:之间有一个空格

新手上路,请多包涵

ajax要在127.0.0.1本地服务器上运行

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进