2014-01-07 5 views
0

Не знаю, что я делаю неправильно, я пытаюсь получить данные json и запустить код. Если я ввожу данные напрямую, все работает нормально.Parsing json in jQuery error

Синтаксический JSON (не работает):

function showprice(pricedata){ 
var obj = jQuery.parseJSON(pricedata); 
console.log(obj.created); 
console.log(obj.price); 

label = obj.created; 
values = obj.price; 
var data = { 
    labels : [obj.created], //obj.created = "2013-12-30 14:20:29","2013-12-30 15:14:48","2013-12-30 14:32:29","2013-12-30 14:26:29" 
    values : [obj.price], //obj.price = 28.41,28.41,72.42,60.42 
    datasets : [ 
    { 
     fillColor : "rgba(151,187,205,0.5)", 
     strokeColor : "rgba(151,187,205,1)", 
     pointColor : "rgba(151,187,205,1)", 
     pointStrokeColor : "#fff", 
     data : [obj.price],... 

Not working

Данные, введенные непосредственно в код (работ):

function showprice(pricedata){ 
var obj = jQuery.parseJSON(pricedata); 
console.log(obj.created); 
console.log(obj.price); 

label = obj.created; 
values = obj.price; 
var data = { 
    labels : ["2013-12-30 14:20:29","2013-12-30 15:14:48","2013-12-30 14:32:29","2013-12-30 14:26:29"], //obj.created = "2013-12-30 14:20:29","2013-12-30 15:14:48","2013-12-30 14:32:29","2013-12-30 14:26:29" 
    values : [28.41,28.41,72.42,60.42], //obj.price = 28.41,28.41,72.42,60.42 
    datasets : [ 
    { 
     fillColor : "rgba(151,187,205,0.5)", 
     strokeColor : "rgba(151,187,205,1)", 
     pointColor : "rgba(151,187,205,1)", 
     pointStrokeColor : "#fff", 
     data : [28.41,28.41,72.42,60.42], 
     mouseover: function(data) {... 

Works

+0

Что такое 'priceata'? –

+1

Вы пытались удалить «[]» вокруг obj.created и obj.price? – cretzzzu3000

+0

Удалить "[]" не работает. – treska

ответ

2

Значения obj.created и obj.price - это фактически строки, которые просто содержат запятые.

Вы можете преобразовать их в массивы, используя .split().

var label = obj.created.split(','); 
var values = obj.price.split(',');