JSON数据分配给Javascript Var值

时间:2015-01-25 07:29:17

标签: javascript jquery json chart.js

我正在检索JSON数据并将它们分配到Javascript中并显示Chart(即使用Chart.js)。

[{"name":"yasiru","col1":"300","col2":"50","col3":"100","col4":"40","col5":"120"}]

 var pieData = [
        {
          value: obj[0].col1,
          color:"#F7464A",
          highlight: "#FF5A5E",
          label: obj[0].name
        },
        {
          value: 50,
          color: "#46BFBD",
          highlight: "#5AD3D1",
          label: "Green"
        },
        {
          value: 100,
          color: "#FDB45C",
          highlight: "#FFC870",
          label: "Yellow"
        }
      ];

当我跑这个。 label : obj[0].name正确显示Yasiru名称没有任何问题。但价值不是。 所以我试着alert(obj[0].col1); 然后它显示我需要的300。我做错了什么?

这里使用PHP代码。 FYI

 $row = mysqli_fetch_array($result);
    $response = array('name' => $row['username'],
    'col1' => $row['first'],
    'col2' => $row['second'],
    'col3' => $row['third'],
    'col4' => $row['fourth'],
    'col5' => $row['five']
);

    $responses[]=$response;

2 个答案:

答案 0 :(得分:1)

您的代码无效,因为您的值是字符串而Chart.js只需要整数。请尝试使用以下JSON代码:

[{"name":"yasiru", "col1": 300, "col2": 50, "col3": 100, "col4": 40,"col5": 120}]

顺便说一句,在调试时更喜欢使用控制台,而不是alert()console.log()

答案 1 :(得分:1)

obj[0].col1是一个字符串,请尝试检查文档以查看图表值是否可以定义为字符串,还是仅定义为数字。在这种情况下,它似乎只能接受数字。

与此同时,使用parseInt应该可以正常工作:

value: parseInt(obj[0].col1)