如何使用getJSON加载Highcharts选项对象,包括回调属性

问题描述 投票:3回答:1

我正在通过对Web服务进行jquery getJSON调用来加载和呈现Highcharts,如下所示:

$.getJSON('options.json')
    .done(function (chartOptions) {
            $('#chartholder').highcharts(chartOptions);
    });

这一切都正常,直到我必须使用需要javascript回调的选项,如axis label formatter。当我尝试失败时出现Uncaught TypeError异常并声明Object没有方法'call'。

我怀疑这是由于Web服务返回的json的结果,将formatter属性包装在引号中,因此它是有效的json,但Highcharts期望它是一个回调。

有没有办法在json中返回一个回调方法,而Highcharts是否可以识别它?

json highcharts
1个回答
0
投票

您可以尝试将json选项移动到脚本(来自options.js)。例如:

//options.js example
window.chartConfig = {
 charType: 'spline',
 tickPositioner: function() {console.log('bla-bla')}
}

// in some main script
$.getScript('options.js')
    .done(function () {
            window
            $('#chartholder').highcharts(window.chartConfig);
    });
© www.soinside.com 2019 - 2024. All rights reserved.