jQuery getJSON抛出错误?

时间:2011-07-12 15:37:40

标签: javascript jquery json cakephp

我在文件中使用getJSON函数从我正在创建的api中获取JSON但getJSON总是因某种原因进入我的错误处理程序。 javascript的代码在这里。它总是进入.error函数。

    window.onload = function() 
            {
                var data = "store_id=5";
                $.getJSON('http://localhost:81/javascript_plugin/get_store_items', data,
                function(json) {
                  alert(json);
                })
                .success(function() { alert("second success"); })
                .error(function() { alert("error"); })
                .complete(function() { alert("complete"); });
            }

我正在使用CakePHP作为我的api端东西,返回的文件如下所示。 $ content_for_layout包含通过调用“echo $ js-> object($ json);”创建的JSON对象。使用jQuery作为javascript引擎。 $ json是CakePHP查找调用的结果。

    <?php
         header("Pragma: no-cache");
         header("Cache-Control: no-store, no-cache, max-age=0, must-revalidate"); 
         header('Content-Type: text/x-json'); 
         header("X-JSON: ".$content_for_layout);
         echo $content_for_layout; 
    ?>

在Firebug中,响应代码为200,标题包含显示的所有内容,但响应选项卡为空。任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:1)

我的问题通过将客户端html文件移动到我的Web服务器并从那里运行来解决。似乎运行'file://'html文件不允许这种类型的服务器调用。现在所有版本的jQuery都可以和所有浏览器一样工作。