簡體   English   中英

無法在JavaScript中動態更新Highchart

[英]Cannot dynamically update highchart in javascript

無法動態更新highchart。

我有圖表。 當用戶單擊按鈕時,我想打開模式窗口,該窗口顯示相同的圖表,但其中一些字段已更新(序列和類別數據)。

我做了什么:

  1. 創建對象“選項”

var options = {} ; -包含所有圖表的obj。

  1. 使用選項創建主圖表:

    var chartWithTopCategories = new Highcharts.Chart(options);

  2. 單擊按鈕時,已更新圖表的打開模態:

  $('#modalId').on( "click", function() { options.xAxis.categories = listOfAllCategories; options.series.data = listOfAllValues; options.chart.renderTo = 'div-id-inside-modal; console.log(options); //4. All options updated successfully here // 5.Then I trying to create new highchart, using options below (I tried both): //$('div-id-inside-modal').highcharts(options); var chart = new Highcharts.Chart(options); // ALL FiELDS ARE UPDATED< BUT NEW CHART IS NOT DISPLAYED. OLD ONE IS DISPLAYED INSTEAD chart.redraw(); // Tried with and without redraw } 

因此,問題在於,當我嘗試在打開的模式中創建新的highchart時,它沒有在使用更新的選項創建新的hoghchart,而是仍在頁面上渲染沒有模式的SAME highchart。 即使我console.log新的highchart對象,它也具有所有具有更新值的字段

我找到了解決方案:

options.series.data = listOfAllValues;

應更改為:

 options.series[0].data = listOfAllValues;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM