0

我将 jQuery 用于级联复选框,但该getJSON命令在服务器上不起作用(在本地它工作正常)。它找不到data.json文件(请参阅错误调试)。

部分脚本:

<script type="text/javascript" src="scripts/jquery-1.7.2.js"></script>
<script>
    $(function() {

        $("#json-one").change(function() {

            var $dropdown = $(this);

            $.getJSON("data.json?callback=?", function(data) {

                var key = $dropdown.val();
                var vals = [];

                switch(key) {
                    case 'BR9':
                        vals = data.BR9.split(",");
                        break;
                    case 'base':
                        vals = ['Please choose from above'];
                }

                var $jsontwo = $("#json-two");
                $jsontwo.empty();
                $.each(vals, function(index, value) {
                    $jsontwo.append("<option>" + value + "</option>");
                });

            });
        });

    });
</script>

萤火虫的错误:

GET http://______my url site ____/data.json 404 NOT FOUND x 25ms

如果我换行

$.getJSON("data.json", function(data) ...

$.getJSON("data.json?callback=?", function(data) ...

它也不起作用。

谁能帮我?

4

2 回答 2

0

您是否尝试过为您的 json 文件提供完整路径?

$.getJSON("http://www.mywebsite.com/folder/data.json?callback=?", function(data) {});
于 2012-04-16T17:02:36.630 回答
0

您进行 JSON 调用的页面和您调用的页面是否在同一个域中?JSON 不支持跨域调用,您需要使用 JSONP。

于 2012-04-17T16:32:58.887 回答