2017-01-13 5 views
0

私はセッションストレージ変数からパイハイチャートでデータをロードしようとしていますが、結果は得られません。セッションストレージからハイチャートにデータを入れる方法は?

私はこれをしたい:

$(function() { 
Highcharts.chart('container', { 
    chart: { 
     type: 'pie', 
     options3d: { 
      enabled: true, 
      alpha: 45 
     } 
    }, 
    title: { 
     text: 'Contents of Highsoft\'s weekly fruit delivery' 
    }, 
    subtitle: { 
     text: '3D donut in Highcharts' 
    }, 
    plotOptions: { 
     pie: { 
      innerSize: 100, 
      depth: 45 
     } 
    }, 
    series: [{ 
     name: 'Delivered amount', 
     data: [ 
      ['Bananas', 8], 
      ['Kiwi', 3], 
      ['Mixed nuts', 1], 
      ['Oranges', 6], 
      ['Apples', 8], 
      ['Pears', 4], 
      ['Clementines', 4], 
      ['Reddish (bag)', 1], 
      ['Grapes (bunch)', 1] 
     ] 
    }] 
}); 

});

と私はこのようなセッション変数に情報を格納しています:

sessionStorage.data = "['Bananas', 9], ['Kiwi', 9]"; 

その後、私は、データフィールドにこの変数を置く:

$(function() { 
Highcharts.chart('container', { 
    chart: { 
     type: 'pie', 
     options3d: { 
      enabled: true, 
      alpha: 45 
     } 
    }, 
    title: { 
     text: 'Contents of Highsoft\'s weekly fruit delivery' 
    }, 
    subtitle: { 
     text: '3D donut in Highcharts' 
    }, 
    plotOptions: { 
     pie: { 
      innerSize: 100, 
      depth: 45 
     } 
    }, 
    series: [{ 
     name: 'Delivered amount', 
     data: sessionStorage.data 
    }] 
}); 

});

私は間違っていますか?

ありがとうございます!

答えて

0

にあなたは文字列としてセッションデータを保存し、あなたはその文字列にHighchartsデータを設定しよう - あなたはjavascript配列にそれをアンシリアライズする必要があります。

あなたはこのようなsessionStorage.dataの形式を変更した場合:

'[["Bananas", 9], ["Kiwi", 9]]' 

あなたはそれをアンシリアライズするJSON.parseを使用することができます。

series: [{ 
    name: 'Delivered amount', 
    data: JSON.parse(sessionStorage.data) 
}] 
+0

それは動作します!今、JSON解析でハイチャートでセッションデータを使用する方法を理解しています。本当にありがとう! –

0

変更

series : [[{name: 'Delivered amount',data: sessionStorage.data}] 

series = [[{name: 'Delivered amount',data: sessionStorage.data}] 
+0

highcharts構文は「でなければなりませんので、私はこれを行うことはできません。 " –

関連する問題