我有一个简单的jQuery post函数,它调用PHP脚本以便从数据库中返回值。
在Firebug中,我看到PHP文件正在以200 OK状态被调用,但是JS中的成功函数没有被调用。
为了测试这个问题,我已经将PHP更改为仅回显一个简单的字符串,但它不能正常工作。
当我直接在浏览器中查看PHP文件时,我会看到回显的字符串。
这是JS代码:
$.post(PATH + "load.php", { id: _id },
function (data) {
console.log("LOADED " + data);
});
这是简单的PHP代码:
<?
echo "bla bla bla"
?>
我不知道问题是什么。 我的HTML + JS文件是本地的,它调用一个在线PHP文件。也许这就是原因? 任何帮助将不胜感激。
答案 0 :(得分:4)
我的HTML + JS文件是本地的,它调用在线PHP文件。也许这就是原因?
答案:是
原因:同源政策规则
http://en.wikipedia.org/wiki/Same_origin_policy
Grant Thomas 建议了一种可能的解决方法:您可以将调用委托给调用外部资源的同源服务器上的方法。