2011-07-22 18 views
0

我使用ExtJS 4來創建圖表。每次我進行AJAX調用時,圖表都會實例化。類似這樣的:如何在AJAX請求中只顯示一張圖表?

$("#maincontent").getJSON("path/to/jsondata",function(data) { 
    _chart.chart = Ext.create("Ext.chart.Chart", { 
    axes : _chart.axes() 
    , style : 'background:#fff' 
    , series : _chart.series() 
    , store : _chart.store() 
    , renderTo : $("#chart").get(0) 
    , width : Sybus.Utils.mainWidth() 
    , height : Sybus.Utils.mainHeight() 
    }); 
}); 

我調用AJAX調用的次數越多,頁面上的圖表就越多。我怎樣才能防止這種情況發生並且只有一張圖表?謝謝。

回答

0

this question類似,我已經調整了它的答案以適應這種情況。

這個問題的答案不在於ExtJS的責任。上面的代碼示例缺少問題的原因。

我建立了一個類,綁定事件到一個函數,建立圖表。每次我調用檢索圖表數據的AJAX調用時,該函數都會在頂部疊加另一個綁定,因此會疊加多個圖表。

解決方法是檢查您是否已經綁定了該事件,或者查看事件unbind(),再查看bind()