Javascript 使用PHP在ajax调用后执行chartjs
我想在ajax调用后加载ChartJs图表。但不幸的是,它显示了所有ChartJS php变量的未定义变量错误 目标: 根据下拉列表中的用户选择更改图表,每个选择选项基本上都是一个JSON链接,我们从中获取数据以显示chartjs 到目前为止我所做的: 设置一个对每个用户都有效的AJAX调用,并选择两个默认值 页面加载+更改选项 在成功的ajax请求部分之后添加了Chartjs代码 测试了所有JSON代码和php数据,一切正常 chartjs php变量的所有ajax返回数据都正常。 问题: 所有chartjs PHP变量名称的未定义变量错误, 胶辊标签, cot_值、cot_值2、cot_值3、cot_值4、cot_值5 图表上没有显示数据。 当用户选择其他选项时,图表也不会使用新数据刷新。 以下是Javascript部分: $document.readyfunction{ $.ajax{ url:./url.php, 类型:POST,, 数据:{ cur:$cur.val }, 成功:functiondata{ 警报数据; 新建Chartdocument.getElementByIdline-chart{ 键入:“行”, 数据:{ 标签:[], 数据集:[{ 数据:[], 标签:A, 边框颜色:3e95cd, 填充:假 }, { 数据:[], 标签:B, 边框颜色:8e5ea2, 填充:假 } , { 数据:[], 标签:C, 边框颜色:085b83, 填充:假 } , { 数据:[], 标签:D, 边框颜色:1c2925, 填充:假 } , { 数据:[], 标签:E, 边框颜色:b9801d, 填充:假 } ] }, 选项:{ 标题:{ 显示:对, 正文: }, 动画:{ 持续时间:0,//一般动画时间 }, 悬停:{ animationDuration:0,//悬停项目时的动画持续时间 }, responsiveAnimationDuration:0,//调整大小后的动画持续时间 } }; } }; $'cur'。关于'change',函数{ $.ajax{ url:./url.php, 类型:POST,, 数据:{ cur:$cur.val }, 成功:functiondata{ 警报数据; 新建Chartdocument.getElementByIdline-chart{ 键入:“行”, 数据:{ 标签:[], 数据集:[{ 数据:[], 标签:A, 边框颜色:3e95cd, 填充:假 }, { 数据:[], 标签:B, 边框颜色:8e5ea2, 填充:假 } , { 数据:[], 标签:C, 边框颜色:085b83, 填充:假 } , { 数据:[], 标签:D, 边框颜色:1c2925, 填充:假 } , { 数据:[], 标签:E, 边框颜色:b9801d, 填充:假 } ] }, 选项:{ 标题:{ 显示:对, 正文: }, 动画:{ 持续时间:0,//一般动画时间 }, 悬停:{ animationDuration:0,//悬停项目时的动画持续时间 }, responsiveAnimationDuration:0,//调整大小后的动画持续时间 } }; } }; }; };Javascript 使用PHP在ajax调用后执行chartjs,javascript,php,html,ajax,chart.js,Javascript,Php,Html,Ajax,Chart.js,我想在ajax调用后加载ChartJs图表。但不幸的是,它显示了所有ChartJS php变量的未定义变量错误 目标: 根据下拉列表中的用户选择更改图表,每个选择选项基本上都是一个JSON链接,我们从中获取数据以显示chartjs 到目前为止我所做的: 设置一个对每个用户都有效的AJAX调用,并选择两个默认值 页面加载+更改选项 在成功的ajax请求部分之后添加了Chartjs代码 测试了所有JSON代码和php数据,一切正常 chartjs php变量的所有ajax返回数据都正常。 问题: 所
要获取变量的值,您必须访问作为应答数据获得的json,并且必须转换val1、val2。。。在向量[val1,val2,…]中,使用: 结果:
只是一个细节,在Ajax JavaScript部分url:./url,应该是:url:./url.phpEdited,仍然是相同的问题。请删除js文件中的php代码,并用浏览器收到的字母替换。对不起,不确定您的意思,举个例子可能会有所帮助。是否要我将$cot_值替换为什么?从页面视图源中,我将数据作为数据:[]添加到ajax调用最后一节中的结果数组部分。然后我添加了数据={cot_标签:null,cot_值:valorcot_值,cot_值2:valorcot_值2,cot_值3:valorcot_值3,cot_值4:valorcot_值4,cot_值5:valorcot_值5};“new Chartdocument.getElementByIdline chart”上面的部分是charjs代码的开始。但仍然显示相同的错误,没有显示图表。以前,它至少用来显示图表,但上面没有数据。现在没有图表了,我放的json只是ajax调用在数据变量中应该返回什么的一个例子。要加载您需要的图表数据,您必须在ajax返回数据时访问该数据,与我之前的编码一致。那么为什么需要一个单独的数组呢?用picture.plus更新了我的问题。在chartjs编码中,我应该如何调用级别和数据的json数据。例如,我目前有以下标签:[]我所购买的
你能用你的编码来写吗?你能提供一个chartjs编码的例子吗?用一个例子编辑我的答案。问候语。
var ctx = document.getElementById("myChart").getContext('2d');
$.ajax({
url: "server.php",
type: "POST",
data: {
...
},
success: function(data) {
var datos = JSON.parse(data);
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: datos.cot_labels.split(','), ///in this way you access the data of the returned json
datasets: [{
data: datos.cot_values.split(','),///in this way you access the data of the returned json
label: "A",
borderColor: "#3e95cd",
fill: false
}, {
data: datos.cot_values2.split(','),
label: "B",
borderColor: "#8e5ea2",
fill: false
}]
},
options: {
title: {
display: true,
text: datos.name
},
animation: {
duration: 0, // general animation time
},
hover: {
animationDuration: 0, // duration of animations when hovering an item
},
responsiveAnimationDuration: 0, // animation duration after a resize
}
});
}
});