在我的代碼,我初始化這樣的圖表......爲什麼我的高層圖表不能正確重置/銷燬?
<script type="text/javascript">
var chart = null,
defaultOptions = {
chart: etc etc
};
function drawDefaultChart() {
chart = new Highcharts.Chart(defaultOptions);
}
$(function() {
$(document).ready(function() {
drawDefaultChart();
});
});
</script>
然後在身體我有
<a href="#" onclick="drawDefaultChart()">Reset</a>
,但是當你點擊鏈接,它的作用是重新繪製圖形與之前狀態的設置...我不太確定發生了什麼事情。如果我添加chart.destroy();圖表不工作在所有...
function drawDefaultChart() {
chart.destroy(); //this makes the chart not work at all
chart = new Highcharts.Chart(defaultOptions);
}
你可以清楚地看到,我是考取默認選項是假設得到重新繪製圖表....我不明白爲什麼它使用舊的過濾器設置,我即將跳下一座橋,有人可以幫助嗎?
我活生生的例子就在這裏http://goo.gl/sGu0M
//////// UPDATE
我能夠有很多的心血,汗水和眼淚來做到這一點。我最終將數據放到了另一個頁面上的php變量中(爲了節省空間),然後使用php變量調用它,然後每次有人點擊鏈接時我都會調用它。我發現爲了重繪圖形,你必須在每次重新加載所有的數據。根據屏幕上的數據量,PHP使這更容易。
這是最終幫我弄明白的鏈接。 http://jsfiddle.net/dane/YUa3R/34/
'$(function() $(document).ready(function(){' - 就緒處理函數中的就緒處理函數?hmmm – 2013-04-09 18:54:04
你在哪裏更改默認選項?沒有我能看到的地方, - 執行相同的事情...每次你點擊鏈接 – 2013-04-09 18:56:42
不應該我最初的「defaultOptions」大括號設置選項作爲快照? – D3Chiq 2013-04-09 18:58:52