Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.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 ChartJS从字符串添加数据_Javascript_Charts_Chart.js - Fatal编程技术网

Javascript ChartJS从字符串添加数据

Javascript ChartJS从字符串添加数据,javascript,charts,chart.js,Javascript,Charts,Chart.js,我试图用从后端获取的数据填充我的douhnut图表,但它不起作用 有人能告诉我我做错了什么以及如何修复它吗 var pieChartCanvas = $("#pieChart").get(0).getContext("2d"); var pieOptions = { ... }; var pieChart = new Chart(pieChartCanvas); pieChart.Doughnut(PieData, pieOptions); 问题在于“PieData”。 如果我是在javasc

我试图用从后端获取的数据填充我的douhnut图表,但它不起作用

有人能告诉我我做错了什么以及如何修复它吗

var pieChartCanvas = $("#pieChart").get(0).getContext("2d");
var pieOptions = { ... };
var pieChart = new Chart(pieChartCanvas);
pieChart.Doughnut(PieData, pieOptions);
问题在于“PieData”。 如果我是在javascript中制作的:

var PieData =
  [
   {
     value: 400,
     color: "#f39c12",
     highlight: "#f39c12",
     label: "FireFox"
   }
  ];
一切正常

但我想从后端设置值:

var token2 = document
.querySelector('script[data-id="MyUniqueName"][data-token2]')
.getAttribute('data-token2');
使用token2=“{value:100,颜色:'#00a65a',高亮显示:'#00a65a',标签:'IE'}”

我尝试在字符串中添加[],或使var data=[token2],但没有任何效果

我不擅长javascript,所以也许有人知道我的答案

编辑

我正在为我的网站使用ASP.NET/C。 我用于将数据提供给javascript的方法是: HTML页面:

我必须将我的c#代码更改为:

Data = "{ "value": "100", "color": "#00a65a", "highlight": "#00a65a", "label": "IE" } ";
我需要引用所有内容,但它不适用于
\“
,我需要把
”放到

使用JSON将其转换为对象:

var PieData = JSON.parse(token2);

我不确定这是否是最好的解决方案,但它目前正在发挥作用。

你能澄清一下吗?你是如何尝试从后端设置值的?什么语言?NodeJS?我使用ChartJS库,只是做了一些类似@BozidarSikanjic的事情,请参见问题编辑
Data = "{ "value": "100", "color": "#00a65a", "highlight": "#00a65a", "label": "IE" } ";
var PieData = JSON.parse(token2);