2013-03-18 3 views
1

Использование HighChart, я пытаюсь добавить ряд данных, но он, похоже, не работает.highchart не может добавитьSeries

Я получаю сообщение об ошибке. "Uncaught TypeError: Cannot call method 'addSeries' of undefined"

<!DOCTYPE HTML> 
<html> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> 
<script src="http://code.highcharts.com/highcharts.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    var chart; 
    $(document).ready(function() { 
     chart = new Highcharts.Chart({ 
      chart: { 
       renderTo: 'target_div' 
      }, 
      series: [{ 
       name: 'Existing', 
       data: [0,0,0] 
      }] 
     }); 
    }); 

    chart.addSeries(
     { 
     name: 'Test', 
     data: [1,2,3] 
     } 
    ) 
</script> 
</head> 
<body> 
    <div id='target_div'> 
</body> 
</html> 

Есть ли что-то очевидно, что мне не хватает?


Это сработало!

$(chart).ready(function() { 
    chart.addSeries(
    { 
     name: 'test', 
     data: [1,2,3] 
    } 
) 
}); 

ответ

4

Вы должны добавить chart.addSeries внутри $(document).ready.

Когда он выполняется, chart не является экземпляром Highcharts.

Demo

+0

Есть ли способ, чтобы добавить его за пределы $ (документ) .ready? – user1486030

+0

Да, вы можете добавить обратный вызов к событию 'load', который будет функцией, которая выполняется после загрузки диаграммы. –

Смежные вопросы