将变量中的 JSON 传递给 HighCharts

Passing JSON in variable to HighCharts

本文关键字:HighCharts JSON 变量      更新时间:2023-09-26
  function b(data){
           document.write(data);
          $('#graphContainer').highcharts(data);
      }

我需要将JSON传递给.highcharts(( API。

使用 document.write(( 我打印了数据的值是:

{"chart" : { "type" : "line"} , "title" : { "text" : "First Time Fix Rate"} , "xAxis" : { "title" : { "text" : "Time"} , "categories" : [ 2009.0 , 2010.0 , 2011.0 , 2012.0 , 2013.0]} , "yAxis" : { "title" : { "text" : "FTFR"}} , "plotOptions" : { "series" : { "cursor" : "pointer" , "point" : { "events" : { "click" :function () {alert (this.category+':' + this.y);}}}}} , "tooltip" : { "pointFormat" : "{series.name} produced {point.y:,.0f}
warheads in {point.x}"} , "series" : [ { "data" : [ 100.0 , 222.0 , 555.0 , 367.0 , 100.0]}]}

如果我手动将其放入

$('#graphContainer'(.highcharts(data(;

删除空格,将生成图形。 但是,如果希望动态生成图表,则在没有任何JavaScript错误的情况下失败。

我尝试了json2.js,JSON.parse和Stringify,但这并没有解决问题。我错过了什么吗?

如果我从我的客户端代码设置会话中的数据并使用 scriplet 访问它,即$('#graphContainer').highcharts(<%=session1.getAttribute("data")%>);它工作正常。我想知道变量有什么问题?

我不能在这里使用会话。

通常,在 json 中,您不能使用函数,因此可能会导致问题。

我已经从另一个来源的 json 数据创建了一个图表。但我所做的是,我以编程方式创建了序列数组,然后在 Highchart 图表的系列值中分配了该数组。不确定这是否对您有帮助。