jQuery AJAX getJSON()方法示例对我不起作用

时间:2012-04-21 20:31:38

标签: jquery ajax getjson

我直接从w3学校的例子中获取此代码,但是,在他们的“Tryit编辑器”之外,它对我不起作用。有什么想法吗?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $("button").click(function () {
                $.getJSON("http://w3schools.com/jquery/demo_ajax_json.js", function (result) {
                    $.each(result, function (i, field) {
                        $("div").append(field + " ");
                    });
                });
            });
        });
    </script>
</head>
<body>
    <button>Get JSON data</button>
    <div></div>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

除非您请求JSONP响应,否则您只能向当前域上的某个位置发出AJAX请求。这是所有浏览器中的安全功能。 Google提供“同源策略”和“跨站点脚本”以获取更多信息。

解决方法是使用服务器端代理从外部域请求数据,然后使用jQuery查询本地代理。

答案 1 :(得分:0)

您需要将jquery/demo_ajax_json.js替换为your file name.js

$.getJSON("http://w3schools.com/jquery/demo_ajax_json.js", function (result)$.getJSON("path/your file", function (result) {