2013-04-29 6 views
0

highcharts.js를 사용하여 대시 보드를 만들려고합니다 (여러 차트가 한 페이지에 표시됨).이 차트의 데이터는 ajax를 통해 가져옵니다. 각 차트는 독립적으로 새로 고칠 수 있습니다. 처음에이 작업을 수행하려고 할 때 # 16 오류가 발생하고 HighCharts.js가 포함되어 있고 Ajax 응답이 HighCharts를 다시 보내므로이 오류가 HighCharts에 던져지고 있음을 알았습니다.highcharts.js를 사용하는 대시 보드

이 문제를 회피하기 위해 나는 HighCharts가 이미 정의되어 있는지 확인하는 JS 코드를 추가하고 있다면 나는

if(window.Highcharts){ 
    window.Highcharts = null; 
} 

이를 null로 설정 문제를 해결하기 위해 듯하지만 지금은 새로 고칠 때 볼 그러나 하나의 차트 대시 보드의 다른 차트에 렌더링 문제가있는 것 같습니다. 다른 차트의 일부가 제거 된 것처럼 보입니다.

내가하고있는 일이 옳은지 알려주고, HighCharts가로드되는 것을 피할 수있는 더 나은 방법을 이미 알려주십시오. 이미로드되어 있습니다.

+0

"데이터가 아약스에 의해 가져 오기되었습니다"라고 말하면

0

왜 각 범위에 하이 차트를로드하고 있습니까? 문서가로드 될 때 한 번만로드하면됩니다.

하이 차트는 차트를 새로 고칠 때마다로드 할 필요가 없습니다. 이미 차트가 있습니다.

아약스를 통해 개별 차트를 새로 고치려면 해당 차트에 대한 데이터의 json 개체를 반환하고 페이지가로드 될 때 설정된 기존 옵션으로 차트를 다시 초기화해야합니다.