Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript getJSON方法不起作用_Javascript_Jquery_Asp.net_Json - Fatal编程技术网

Javascript getJSON方法不起作用

Javascript getJSON方法不起作用,javascript,jquery,asp.net,json,Javascript,Jquery,Asp.net,Json,下面是我的代码,其中getJSON方法不起作用 function loadJson() { $(document).ready(function () { alert("inside"); var chart; var url = "values.json"; var seriesData = []; var xCategories = [];

下面是我的代码,其中getJSON方法不起作用

 function loadJson() {
        $(document).ready(function () {
            alert("inside");
            var chart;
            var url = "values.json";
            var seriesData = [];
            var xCategories = [];
            var i, cat;
            alert("outside");
            $.getJSON(url, function (data) {
                alert("inside JSON function");
for (i = 0; i < data.length; i++) {
                    cat = '' + data[i].period_name;
                    if (xCategories.indexOf(cat) === -1) {
                        xCategories[xCategories.length] = cat;
                    }
                }
                for (i = 0; i < data.length; i++) {
                    if (seriesData) {
                        var currSeries = seriesData.filter(function (seriesObject) {
                            return seriesObject.name == data[i].series_name;
                        }
                        );
                        if (currSeries.length === 0) {
                            seriesData[seriesData.length] = currSeries = { name: data[i].series_name, data: [] };
                        } else {
                            currSeries = currSeries[0];
                        }
                        var index = currSeries.data.length;
                        currSeries.data[index] = data[i].period_final_value;
                    }
                    else {
                        seriesData[0] = { name: data[i].series_name, data: [data[i].period_final_value] }
                    }
                }

                //var chart;
                //$(document).ready(function() {
                chart = new Highcharts.Chart({
                    chart: {
                        renderTo: 'container',
                        type: 'bar'
                    },
                    title: {
                        text: 'Stacked column chart'
                    },
                    xAxis: {
                        categories: xCategories
                    },
                    yAxis: {
                        //min: 0,
                        //max: 100,
                        title: {
                            text: 'Total fruit consumption'
                        },
                        stackLabels: {
                            enabled: false,
                            style: {
                                fontWeight: 'bold',
                                color: (Highcharts.theme && Highcharts.theme.textColor) || 'gray'
                            }
                        }
                    },
                    legend: {
                        align: 'right',
                        x: -100,
                        verticalAlign: 'top',
                        y: 20,
                        floating: true,
                        backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColorSolid) || 'white',
                        borderColor: '#CCC',
                        borderWidth: 1,
                        shadow: false
                    },
                    tooltip: {
                        formatter: function () {
                            return '<b>' + this.x + '</b><br/>' +
                                this.series.name + ': ' + this.y + '<br/>'
                        }
                    },

                    series: seriesData


                });
            });

        });
    }
文件呈现,但数据未显示在图表上,只有getJSON方法外部的警报起作用,内部警报不起作用,相同的代码如果我尝试从html页面运行,那么它可以正常工作,但现在我在ASP.NET Web应用程序中编写了VS中的整个代码,我在javascript中调用了body onLoad上的loadJson函数,如下所示,

<body onload="loadJson();">

但是这个方法没有运行, 无法解决此问题,任何帮助都将不胜感激

----------附加工作------

当我将我的JSON数据添加到getJSON方法之上的任何变量中,并删除getJSON方法并访问它时,我就可以正确地获取图形,但是当我使用getJSON方法时,它就不起作用了

 function loadJson() {
        $(document).ready(function () {
            alert("inside");
            var chart;
            var url = "values.json";
            var seriesData = [];
            var xCategories = [];
            var i, cat;
            alert("outside");
            $.getJSON(url, function (data) {
                alert("inside JSON function");
for (i = 0; i < data.length; i++) {
                    cat = '' + data[i].period_name;
                    if (xCategories.indexOf(cat) === -1) {
                        xCategories[xCategories.length] = cat;
                    }
                }
                for (i = 0; i < data.length; i++) {
                    if (seriesData) {
                        var currSeries = seriesData.filter(function (seriesObject) {
                            return seriesObject.name == data[i].series_name;
                        }
                        );
                        if (currSeries.length === 0) {
                            seriesData[seriesData.length] = currSeries = { name: data[i].series_name, data: [] };
                        } else {
                            currSeries = currSeries[0];
                        }
                        var index = currSeries.data.length;
                        currSeries.data[index] = data[i].period_final_value;
                    }
                    else {
                        seriesData[0] = { name: data[i].series_name, data: [data[i].period_final_value] }
                    }
                }

                //var chart;
                //$(document).ready(function() {
                chart = new Highcharts.Chart({
                    chart: {
                        renderTo: 'container',
                        type: 'bar'
                    },
                    title: {
                        text: 'Stacked column chart'
                    },
                    xAxis: {
                        categories: xCategories
                    },
                    yAxis: {
                        //min: 0,
                        //max: 100,
                        title: {
                            text: 'Total fruit consumption'
                        },
                        stackLabels: {
                            enabled: false,
                            style: {
                                fontWeight: 'bold',
                                color: (Highcharts.theme && Highcharts.theme.textColor) || 'gray'
                            }
                        }
                    },
                    legend: {
                        align: 'right',
                        x: -100,
                        verticalAlign: 'top',
                        y: 20,
                        floating: true,
                        backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColorSolid) || 'white',
                        borderColor: '#CCC',
                        borderWidth: 1,
                        shadow: false
                    },
                    tooltip: {
                        formatter: function () {
                            return '<b>' + this.x + '</b><br/>' +
                                this.series.name + ': ' + this.y + '<br/>'
                        }
                    },

                    series: seriesData


                });
            });

        });
    }
-----错误检查----------

我检查了chrome中的错误,知道它无法获取json文件,我将json文件保存在项目文件夹中,然后我还尝试将json文件保存在localhost中,仍然显示相同的错误

现在我想我在使用aspx页面处理mime类型时遇到了问题..是否有任何链接....

使用not like

并检查您的
json
是否
有效
(检查
控制台中是否有
json选项卡

使用不一样

并检查您的
json
是否
有效
(检查
控制台中是否有
json选项卡

使用不一样

并检查您的
json
是否
有效
(检查
控制台中是否有
json选项卡

使用不一样


并检查您的
json
是否
有效
(检查
json选项卡
是否位于
控制台中

文件调用是否有错误

请尝试以下操作:

$.getJSON(url)
  .done(function(data) {
    alert("INSIDE FUNCTION")
  })
  .fail(function(jqXHR, textStatus) {
    alert("Request failed: " + textStatus);
  });
我主要在所有jQueryAjax(和包装器)调用中使用这种编码风格,因此如果需要,我可以给用户一个响应
请求失败。

调用文件时是否有错误

请尝试以下操作:

$.getJSON(url)
  .done(function(data) {
    alert("INSIDE FUNCTION")
  })
  .fail(function(jqXHR, textStatus) {
    alert("Request failed: " + textStatus);
  });
我主要在所有jQueryAjax(和包装器)调用中使用这种编码风格,因此如果需要,我可以给用户一个响应
请求失败。

调用文件时是否有错误

请尝试以下操作:

$.getJSON(url)
  .done(function(data) {
    alert("INSIDE FUNCTION")
  })
  .fail(function(jqXHR, textStatus) {
    alert("Request failed: " + textStatus);
  });
我主要在所有jQueryAjax(和包装器)调用中使用这种编码风格,因此如果需要,我可以给用户一个响应
请求失败。

调用文件时是否有错误

请尝试以下操作:

$.getJSON(url)
  .done(function(data) {
    alert("INSIDE FUNCTION")
  })
  .fail(function(jqXHR, textStatus) {
    alert("Request failed: " + textStatus);
  });
我主要在所有jQueryAjax(和包装器)调用中使用这种编码风格,因此如果需要,我可以给用户一个响应 请求失败。

发现您的JSON存在问题

[{"series_name":"Actual","period_name":"Q1 / 2013","period_final_value":17},
 {"series_name":"Actual","period_name":"Q2 / 2013","period_final_value":15},
 {"series_name":"Actual","period_name":"Q3 / 2013","period_final_value":13},
 {"series_name":"Actual","period_name":"Q4 / 2013","period_final_value":19},]
它不是一个有效的JSON,因为
就在
]
括号之前。

发现您的JSON有问题

[{"series_name":"Actual","period_name":"Q1 / 2013","period_final_value":17},
 {"series_name":"Actual","period_name":"Q2 / 2013","period_final_value":15},
 {"series_name":"Actual","period_name":"Q3 / 2013","period_final_value":13},
 {"series_name":"Actual","period_name":"Q4 / 2013","period_final_value":19},]
它不是一个有效的JSON,因为
就在
]
括号之前。

发现您的JSON有问题

[{"series_name":"Actual","period_name":"Q1 / 2013","period_final_value":17},
 {"series_name":"Actual","period_name":"Q2 / 2013","period_final_value":15},
 {"series_name":"Actual","period_name":"Q3 / 2013","period_final_value":13},
 {"series_name":"Actual","period_name":"Q4 / 2013","period_final_value":19},]
它不是一个有效的JSON,因为
就在
]
括号之前。

发现您的JSON有问题

[{"series_name":"Actual","period_name":"Q1 / 2013","period_final_value":17},
 {"series_name":"Actual","period_name":"Q2 / 2013","period_final_value":15},
 {"series_name":"Actual","period_name":"Q3 / 2013","period_final_value":13},
 {"series_name":"Actual","period_name":"Q4 / 2013","period_final_value":19},]
它不是有效的JSON,因为
就在
]
括号之前。

1)请确保您使用的是有效的JSON:www.jsonlint.com

2) 在本地主机上运行json文件。如果您看到浏览器上的json文件在localhost上运行,请告诉我。确保您的web.config中有此项

  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
  </system.webServer>
4) 通过这些测试后,继续构建jQuery代码。

1)确保使用的是有效的json:www.jsonlint.com

2) 在本地主机上运行json文件。如果您看到浏览器上的json文件在localhost上运行,请告诉我。确保您的web.config中有此项

  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
  </system.webServer>
4) 通过这些测试后,继续构建jQuery代码。

1)确保使用的是有效的json:www.jsonlint.com

2) 在本地主机上运行json文件。如果您看到浏览器上的json文件在localhost上运行,请告诉我。确保您的web.config中有此项

  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
  </system.webServer>
4) 通过这些测试后,继续构建jQuery代码。

1)确保使用的是有效的json:www.jsonlint.com

2) 在本地主机上运行json文件。如果您看到浏览器上的json文件在localhost上运行,请告诉我。确保您的web.config中有此项

  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
  </system.webServer>

4) 通过这些测试后,继续构建jQuery代码。

您的问题非常不清楚。您谈论的是
getJSON
,但您使用的是
$.get
。然后你提到图表的数据没有更新,但没有显示图表的代码,甚至告诉我们它是什么类型的图表…?json数据无效-请参阅@Rorymcrossan。。我将更新这个问题,它是getJSON,但我更改它是为了测试。@amdixon。。这个json是有效的,我已经使用JavaScriptSerializer的serialize方法序列化了json文件。我们的问题很不清楚。您谈论的是
getJSON
,但您使用的是
$.get
。然后你提到图表的数据没有更新,但没有显示图表的代码,甚至告诉我们它是什么类型的图表…?json数据无效-请参阅@Rorymcrossan。。我将更新这个问题,它是getJSON,但我更改它是为了测试。@amdixon。。这个json是有效的,我已经使用JavaScriptSerializer的serialize方法序列化了json文件。我们的问题很不清楚。您谈论的是
getJSON
,但您使用的是
$.get
。然后你提到图表的数据没有更新,但没有显示图表的代码,甚至告诉我们它是什么类型的图表…?json数据无效-请参阅@Rorymcrossan。。我将更新这个问题,它是getJSON,但我更改它是为了测试。@amdixon。。这个json是有效的,我已经使用JavaScriptSerializer的serialize方法序列化了json文件。我们的问题很不清楚。您谈论的是
getJSON
,但您使用的是
$.get
。那你是曼蒂吗