在 PeriodSelector AMChart 中发送 ajax 请求

Send ajax request in PeriodSelector AMChart

我有这个 javascript 代码来绘制 amchart 股票,只是 PeriodSelector 部分:

 var periodSelectorAjax = new AmCharts.PeriodSelector();
 periodSelectorAjax.periods = [
    {period: "F1", label: "Phase 1"},
    {period: "F2", label: "Phase 2"},
    {period: "F3", label: "Phase 3"},
    {period: "MAX", selected: true, label: "MAX"}
];

我需要在用户点击句点重新加载图表时进行拦截,我发现我可以用这个来做到这一点,来自 :

var chart = AmCharts.makeChart( "chartdiv", {
"type": "stock",

 // ...

"periodSelector": {
"position": "left",
"periods": [ {
  "period": "MM",
  "selected": true,
  "count": 1,
  "label": "1 month"
}, {
  "period": "YYYY",
  "count": 1,
  "label": "1 year"
}, {
  "period": "YTD",
  "label": "YTD"
}, {
  "period": "MAX",
  "label": "MAX"
} ],
"listeners": [ {
  "event": "changed",
  "method": function( event ) {
    if ( event.predefinedPeriod !== undefined ) {
      console.log( event.predefinedPeriod, event.count );
    }
  }
} ]
},

// ...
} );

但我不知道如何放置最后一个监听器部分并将其与我的代码一起使用。

谢谢

您可以直接在 periodSelectorAjax 变量上使用 addListener method or just set the listeners 数组。

addListener 示例:

periodSelectorAjax.addListener("changed", function(event) {
  // your code here
});

listeners 属性 示例:

periodSelectorAjax.listeners = [{
  "event": "changed",
  "method": function(event) {
    // ...
  }
}]