JavaScript错误-未捕获语法错误:意外数字
在我的php中,我运行两个不同的Select语句,并将它们传递给我的JQuery数组JavaScript错误-未捕获语法错误:意外数字,javascript,jquery,charts,joomla,chart.js,Javascript,Jquery,Charts,Joomla,Chart.js,在我的php中,我运行两个不同的Select语句,并将它们传递给我的JQuery数组value和value1,我已经验证了每个数组都以正确的格式保存数据,但我的问题是我的图表从未创建过。我想要的是,集合1是一个条形图,集合2是一条线,它显示的数据点与集合1相同,但它是一条线。我尝试了下面的语法,但由于没有图表显示某些内容,是否有错误 <script> var ctx = document.getElementById('canvas').getContext('2d');
value
和value1
,我已经验证了每个数组都以正确的格式保存数据,但我的问题是我的图表从未创建过。我想要的是,集合1是一个条形图,集合2是一条线,它显示的数据点与集合1相同,但它是一条线。我尝试了下面的语法,但由于没有图表显示某些内容,是否有错误
<script>
var ctx = document.getElementById('canvas').getContext('2d');
var chart = new Chart(ctx, {
data: {
type: 'bar',
labels: labelsarr,
datasets: [{
label: 'Set 1',
data: values,
backgroundColor: 'rgba(0, 119, 204, 0.8)',
}]
}, {
type: 'line',
datasets: [{
label: 'Set 2',
data: values1,
backgroundColor: 'rgba(0,119, 208, 0.8)',
}]
}
options: {
tooltips: { },
legend: {
display: false,
position: 'top',
},
scales: { }
});
<script>
第13行:数据:[值1]
值和1之间的空间不应该存在-或者完全去掉该空间,因此:
数据:[值1]
或
数据:[数值,1]
现在,我不太确定你在哪里定义值,所以我只能建议你这么做
除此之外,还有一些其他语法错误(例如缺少括号)。
以下是完整的代码(假设您有一个图表对象):
var图表=新图表(ctx{
数据集:[{
类型:'bar',
标签:labelsarr,
标签:“样本1”,
背景颜色:“rgba(0,119,204,0.8)”,
数据:[数值]
}, {
键入:“行”,
标签:“设置2”,
背景颜色:“rgba(01192080.8)”,
数据:[值1]
}, {
选项:{
工具提示:{
回调:{
标签:功能(t,d){
var xLabel=d.datasets[t.datasetIndex].label;
var yLabel=t.yLabel>=1000?'$'+t.yLabel.toString()。替换(/\B(?=(\d{3})+(?!\d))/g,“,”:'$'+t.yLabel;
返回xLabel+':'+yLabel;
}
}
},
图例:{
显示:假,
位置:'顶部',
文本:“示例2”,
},
比例:{
雅克斯:[{
滴答声:{
贝吉纳泽罗:是的,
回调:函数(值、索引、值){
如果(parseInt(值)>=1000){
返回“$”+value.toString()。替换(/\B(?=(\d{3})+(?!\d))/g,“,”;
}否则{
返回“$”+值;
}
}
}
}]
}
},
插件:[{
绘制前:函数(图表){
var标签=chart.data.labels;
标签.forEach(函数(e,i){
var bar=chart.data.datasets[0]。\u meta[0]。data[i]。\u model;
var dataPoint=e.split(/\s/)[1];
如果(数据点=='16')
bar.backgroundColor='橙色';
else if(数据点=='17')
bar.backgroundColor='蓝色';
});
}
}]
}
}]
);
Good catch-changing现在给了我一个错误“Uncaught SyntaxError:Unexpected token:”有很多语法错误,我已经在编辑中修复了这些错误-我想应该就这些了。
var ctx = document.getElementById('canvas').getContext('2d');
var chart = new Chart(ctx, {
datasets: [{
type: 'bar',
labels: labelsarr,
label: 'Sample 1',
backgroundColor: 'rgba(0, 119, 204, 0.8)',
data: [ values ]
}, {
type: 'line',
label: 'Set 2',
backgroundColor: 'rgba(0,119, 208, 0.8)',
data: [ values 1 ]
},
options: {
tooltips: {
callbacks: {
label: function (t, d) {
var xLabel = d.datasets[t.datasetIndex].label;
var yLabel = t.yLabel >= 1000 ? '$' + t.yLabel.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",") : '$' + t.yLabel;
return xLabel + ': ' + yLabel;
}
}
},
legend: {
display: false,
position: 'top',
text: 'Sample 2',
},
scales: {
yAxes: [{
ticks: {
beginAtZero: true,
callback: function (value, index, values) {
if (parseInt(value) >= 1000) {
return '$' + value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
} else {
return '$' + value;
}
}
}
}]
}
},
plugins: [{
beforeDraw: function (chart) {
var labels = chart.data.labels;
labels.forEach(function (e, i) {
var bar = chart.data.datasets[0]._meta[0].data[i]._model;
var dataPoint = e.split(/\s/)[1];
if (dataPoint === '16')
bar.backgroundColor = 'orange';
else if (dataPoint === '17')
bar.backgroundColor = 'blue';
});
}
}]
}
}]);