我有两个名为host.html和test.html的html文件,我已经很努力地尝试了,但我无法在我尝试过的host.html中加载test.html文件作为mydiv的内容:
$("#myDiv").load("test.html");
但是失败了;然后我尝试使用以下ajax方法来获取该文件:
$.ajax({
type: "GET",
url: "test.html",
error: function (xhr, statusText) { alert("Error: " + statusText); },
success: function (msg) { alert("Success: " + msg); }
});
但遗憾的是,我总是犯错误!host.html和test.html都在同一个文件夹中!我做错了什么?!请帮帮忙
干杯!
发布于 2013-07-21 08:43:26
引用:Origin null is not allowed by Access-Control-Allow-Origin
Origin null是本地文件系统,因此这意味着您正在加载通过file:/// URL执行加载调用的HTML页面(例如,只需在本地文件浏览器或类似浏览器中双击它)。不同的浏览器采用不同的方法将同源策略应用于本地文件。
我的猜测是,你正在使用Chrome看到这一点。Chrome将SOP应用于本地文件的规则非常严格,它甚至不允许从与文档相同的目录加载文件。Opera也是如此。其他一些浏览器,如Firefox,允许对本地文件的有限访问。但基本上,将ajax与本地资源一起使用不能跨浏览器工作。
如果你只是在本地测试一些你真的要部署到web上的东西,而不是使用本地文件,那么安装一个简单的web服务器并通过http:// URLs进行测试。这为您提供了一个更准确的安全图片。
https://stackoverflow.com/questions/17768000
复制相似问题