Javascript 如何调试不工作的基于AJAX的HighChart?
我遇到了海图。我已经学习了一些教程,但不幸的是我无法执行。页面正在加载空白。我已经添加了所有必需的脚本 以下是代码: data.phpJavascript 如何调试不工作的基于AJAX的HighChart?,javascript,php,highcharts,Javascript,Php,Highcharts,我遇到了海图。我已经学习了一些教程,但不幸的是我无法执行。页面正在加载空白。我已经添加了所有必需的脚本 以下是代码: data.php 请检查下面的代码中的index.php 我注意到您的$(document).ready()函数未被调用,因此我在顶部添加了js文件,并删除了下面未完成的行 “文本/html;字符集=utf-8”> 代码: 使用Highcharts从MySQL获取数据的条形图 请检查下面的代码中的index.php 我注意到您的$(document).ready()函数未被调用
请检查下面的代码中的index.php 我注意到您的
$(document).ready()
函数未被调用,因此我在顶部添加了js文件,并删除了下面未完成的行
“文本/html;字符集=utf-8”>
代码:
使用Highcharts从MySQL获取数据的条形图
请检查下面的代码中的index.php
我注意到您的$(document).ready()
函数未被调用,因此我在顶部添加了js文件,并删除了下面未完成的行
“文本/html;字符集=utf-8”>
代码:
使用Highcharts从MySQL获取数据的条形图
你似乎在赶着做剪贴
我鼓励您一行一行地浏览代码,并了解它的功能。
只有这样你才能学习。我可以在路上帮你一些忙:
从index.php开始
Dharmesh Goswami已经用“text/html;charset=utf-8”>
指出了不完整的一行。在该行下面有一个打开的脚本标记。它丢失了>
如果您看一下JavaScript,在$.getJSON(url,函数(json){
下面的前六行:
options.xAxis.categories = json[0]['data'];
options.series[0] = json[1] ;
options.series[1] = json[2] ;
options.series[2] = json[3] ;
var chart = new Highcharts.Chart(options);
var options = {
...
这是怎么回事?在var options={
中创建对象之前,您要更改对象options
四次。在此之前,请在var chart=new Highcharts.chart(options);
中使用options
中的设置初始化HighChart。然后再创建它
在JS中,您需要从var选项={
开始,然后可以更改xAxis和系列,然后可以使用var-chart=…
初始化HighCharts
至于data.php我建议您打开它的url,确保它打印出有效的json,并且json的格式符合HighChart的预期
下面是一个官方提琴,显示ajax加载的数据:
祝你好运。你似乎在赶着做剪贴
我鼓励您一行一行地浏览代码,并了解它的功能。
只有这样你才能学习。我可以在路上帮你一些忙:
从index.php开始
Dharmesh Goswami已经指出了带有“text/html;charset=utf-8”>
的不完整行。在该行下面有一个打开的脚本标记。它缺少
如果您看一下JavaScript,在$.getJSON(url,函数(json){
下面的前六行:
options.xAxis.categories = json[0]['data'];
options.series[0] = json[1] ;
options.series[1] = json[2] ;
options.series[2] = json[3] ;
var chart = new Highcharts.Chart(options);
var options = {
...
这是怎么回事?在var options={
中创建对象之前,您要更改对象options
四次。在此之前,请在var chart=new Highcharts.chart(options);
中使用options
中的设置初始化HighChart。然后再创建它
在JS中,您需要从var选项={
开始,然后可以更改xAxis和系列,然后可以使用var-chart=…
初始化HighCharts
至于data.php我建议您打开它的url,确保它打印出有效的json,并且json的格式符合HighChart的预期
下面是一个官方提琴,显示ajax加载的数据:
祝您好运。您已经修复了一个问题,即您的AJAX JSON响应无效,因为它包含使其无法解析的PHP警告
接下来,您的JavaScript无法工作。以下代码:
options.xAxis.categories = json[0]['data'];
options.series[0] = json[1] ;
options.series[1] = json[2] ;
options.series[2] = json[3] ;
var chart = new Highcharts.Chart(options);
这应该在您定义了选项之后进行,因此请在此之后移动它:
var options = {
...
}
这是因为你正在访问一些不存在的东西
此外,上述选项需要分号,因此将其更改为:
var options = {
...
};
您已经修复了一个问题,即您的AJAX JSON响应无效,因为它包含使其不可解析的PHP警告
接下来,您的JavaScript无法工作。以下代码:
options.xAxis.categories = json[0]['data'];
options.series[0] = json[1] ;
options.series[1] = json[2] ;
options.series[2] = json[3] ;
var chart = new Highcharts.Chart(options);
这应该在您定义了选项之后进行,因此请在此之后移动它:
var options = {
...
}
这是因为你正在访问一些不存在的东西
此外,上述选项需要分号,因此将其更改为:
var options = {
...
};
您是否可以更具体地说明什么不起作用?图表是否应该通过AJAX/JSON加载数据?如果是,您是否检查了浏览器的“网络”选项卡以检查请求和响应?您是否在浏览器的JS控制台中发现任何JS错误?我已经创建并配置了数据库,然后将数据库详细信息编码到JSON format在data.php中。现在在index.php中,我需要调用data.php,我需要将JSON数据显示到Highchart中。我已经在服务器中执行了代码,但它正在加载为空白页或没有数据。请帮我解决这个问题。再次感谢您的响应。您检查了浏览器的网络选项卡和JavaScript控制台吗?是的,我检查了browsers.在控制台中没有显示任何数据。但是在网络选项卡中,JS文件列出,状态为200,jquery.min.JS作为状态304,这是您加载的JavaScript文件。但是,我认为应该有一个额外的网络操作来获取data.php
中的数据-检查一下。您是否可以更具体地说明哪些不是正在工作?图表是否应该通过AJAX/JSON加载数据?如果是,您是否检查了浏览器的网络选项卡以检查请求和响应?您是否在浏览器的JS控制台中发现任何JS错误?我已经创建并配置了数据库,然后在data.php中将数据库详细信息编码为JSON格式。现在在index.php中