Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过AJAX加载文本文件会导致受限URI错误_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 通过AJAX加载文本文件会导致受限URI错误

Javascript 通过AJAX加载文本文件会导致受限URI错误,javascript,jquery,ajax,Javascript,Jquery,Ajax,我提到我读了建议的链接…但无法理解 建议..“使用Greasemonkey修改页面并开始编写一些 修改网页的javascript 我正在加载一个带有$.ajax的文本文件。在Firefox上运行代码时,出现以下错误: 错误:[“拒绝访问受限URI”代码:“1012”nsresult:“0x805303f4(NS\u错误\u DOM\u错误\u URI)”位置:“” 这是我的密码: <!DOCTYPE html> <html> <head> <script

我提到我读了建议的链接…但无法理解 建议..“使用Greasemonkey修改页面并开始编写一些 修改网页的javascript

我正在加载一个带有
$.ajax
的文本文件。在Firefox上运行代码时,出现以下错误:

错误:[“拒绝访问受限URI”代码:“1012”nsresult:“0x805303f4(NS\u错误\u DOM\u错误\u URI)”位置:“”

这是我的密码:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script language="javascript" type="text/javascript">
    $(document).ready(function () {
        $("button").click(function () {
            $.ajax({ url: "demo_test.txt",
                success: function (result) {
                    $("#div1").html(result);
                },
                error: function (abc) {
                    alert(abc.statusText);
                },
                cache:false
            });
            return false;
        });
    });
</script>
</head>
<body>

<div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div>
<button>Get External Content</button>

</body>
</html>

$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
$.ajax({url:“demo_test.txt”,
成功:功能(结果){
$(“#div1”).html(结果);
},
错误:函数(abc){
警报(abc.statusText);
},
缓存:false
});
返回false;
});
});
让jQuery AJAX更改此文本
获取外部内容
我已经阅读了以下问题:

有人建议不使用文件系统,因此将URL更改为,但这并没有解决问题


我还听说这可能是因为跨域问题。如果是,这到底是什么意思,我应该如何解决问题?

浏览器安全性会阻止代码运行。您最好运行本地服务器,如IIS或Apache

通过更改浏览器配置,可以将浏览器更改为运行本地内容

Firefox

  • 转到about:config
  • 查找security.fileuri.strict\u origin\u策略参数
  • 将其设置为false

  • 我似乎终于开始工作了。这是工作脚本

    $("button").click(function(){
        $.ajax({url:"http://localhost/demo_test.txt",success:function(result){
          $("#div1").html(result);
        }});
      });
    

    解决方法:将html文件和文本文件放在本地服务器(IIS)的新站点上。

    您是否正在运行filr协议…aka
    c:\\test\foo.html
    我想我没有。根据您的链接,我做了以下操作:1.将url更改为“D:\\demo\u test.txt”“2.更改Firefox中的本地文件安全策略。但它仍然给我同样的错误,你是在运行本地服务器…又名
    http://localhost
    或者您只需单击一个文件,它就会在浏览器中打开。我单击HTML文件。它在FireFox中打开,地址为“file:///C:/Users/Administrator/Desktop/New%20folder/my_html.html“您正在本地文件协议上运行。你需要启用firefox,让它访问我在第一条评论中发布的链接告诉你的文件。您确实应该在本地运行IIS或Apache,而不必处理此问题。我已经做了此设置。现在我将html文件和文本文件放在IIS的默认网站(它正在运行)中,然后再次浏览:新url为“仍然存在异常:[异常…”nsresult:“0x805e0006()”位置:“JS帧::。发送::行6”数据:否]你的建议对我也有帮助,但是你知道这是否是一个特殊的问题吗?