【发布时间】:2014-10-20 17:59:42
【问题描述】:
我有一个使用 AJAX 将 JSON 格式的字符串传送到 HighCharts 图表的网站。
您可以将其视为中间 JSON 代码部分:
$('#container').highcharts(
//JSON Start
{
"plotOptions": {
"series": {"animation": {"duration": 500}}
,"pie": {
"allowPointSelect": true,
"cursor": "pointer",
"dataLabels": {"formatter":function(){return this.point.name+': '+this.percentage.toFixed(1) + '%';}}
}
},
"chart":{"renderTo":"divReportChart"}
,"title":{"text":"Sales Totals"}
,"xAxis":{"title":{"text":"Item"}, "categories":["Taxes","Discounts","NetSalesTotal"], "gridLineWidth":1}
,"yAxis":[{"title":{"text":"Amount"}, "gridLineWidth":1}]
,"series":[{"name":"Amount","type":"pie", "startAngle": -60,"yAxis": 0,"data":[["Taxes",17.8700],["Discounts",36.0000],["NetSalesTotal",377.9500]]}]
}
//JSON end
);
问题在于功能部分...
"dataLabels": {"formatter":function(){return this.point.name+': '+this.percentage.toFixed(1) + '%';}}
没有通过 JSON 传输
所有研究都告诉我没有办法做到这一点。
IE...Is it valid to define functions in JSON results?
有人知道如何绕过这个限制吗?
【问题讨论】:
-
对不起;我看错了介绍。的确,您不能通过 JSON 发送函数,但没有什么能阻止您在调用 Highcharts 之前在客户端中添加这些函数。
-
为什么要通过 AJAX 将 Highcharts 选项发送到服务器? Highcharts 是一个客户端绘图库,您的服务器将如何处理配置?
标签: javascript ajax json highcharts