jquery中的$ .ajax函数不起作用

时间:2012-07-16 05:05:44

标签: javascript jquery ajax

我开始使用jquery并遇到一个小问题,其中$ .ajax(...)无效。实际上整个jquery,javascript业务一直很难,因为在脚本不起作用的情况下整理问题。这是我的代码......

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
/*  $.ajax({url:"http://reddit.com/r/nyc.json", success:function(result){
    $("div").text("helloz");
    }});*/
        $("div").text("hello");
});
</script>
</head>
<body>

<div><h2>Let AJAX change this text</h2></div>
<button>Change Content</button>
</body>
</html>

正如你在代码中看到的那样,我已经注释掉了.ajax函数,而是放了一些其他代码片段并且它工作正常,证明jquery被正确加载并且就绪函数运行良好。但是,.ajax功能不起作用。我的互联网连接工作正常,如果我将此代码粘贴到w3cschool's tryit editor中,则代码可以正常运行。有人可以帮助我。

此外,解决此类错误追踪的任何一般策略都会非常有用。我有Chrome浏览器但是当我打开javascript控制台时,它显示一切正常......

1 个答案:

答案 0 :(得分:6)

问题是url:"http://reddit.com/r/nyc.json",这不是您的域名,因此Same origin policy即将出现。

您需要在服务器中创建代理。 或者,如果站点支持jsonp,则可以使用jsonp。

$.getJSON('http://www.reddit.com/r/nyc.json?jsonp=?', function(data) {
   console.log(data);
});​

The demo