2016-04-05 7 views
-3

PHP関数のGoogle Chartデータをjsonエンコード形式で取得していますが、これを "arrayToDataTable"関数に渡します。私は$ .ajax関数を使用しています。次のデータを "arrayToDataTable"関数に渡すとき
Googleスキャッタチャート - {role: 'style'} {role: 'tooltip'} JSONフォームでは機能しません。

var obj = $.parseJSON('[ 
    ["goals", "goal", { 
     role: 'style' 
    }, { 
     role: 'tooltip' 
    }], 
    [54, 0.5, "#0000cf", "54%"], 
    [100, 1.5, "#0000cf", "100%"], 
    [97, 2.5, "#0000cf", "97%"], 
    [87, 2.5, "#0000cf", "87%"] 
]')
var data = google.visualization.arrayToDataTable(obj);

次のエラーが発生しています。
にSyntaxError:JSON.parse:期待されるプロパティの名前または「}」JSONデータ

の行1列19におけるデータは、予想通り、それはグラフを生成している「スタイル」と「ツールチップ」列なしで送信された場合。私はこのポストを以下の午前

:JSONでGoogle Chart - uncaught error: not an array

+0

べきか? – Aleksej

+1

あなたのjsonをインデントすればエラーが表示されます。あなたのjsonを確認してください:http://jsonlint.com/ – Apolo

答えて

1

、属性名は文字列でなければなりません。

編集:あなたはコードより良いインデントを喜ばでしたストリング区切り文字は常に"なく'

ので

{ 
    role: 'style' 
} 

する必要がありますが

{ 
    "role": "style" 
} 
+0

エラーコードが変更された後:SyntaxError:JSON.parse:JSONデータの第1行27列の予期しない文字 –

+0

が '{ " role ":" style " }'その現在の作業 –

+0

正確、私は答えを編集しました – Apolo

関連する問題