在dojo.byId之后,dojox图表更新/销毁不起作用

时间:2011-01-06 01:14:47

标签: charts dojo destroy

我使用;

创建了一个道场图表
var pieChart = new dojox.charting.Chart2D("pieChart");

之后我想更新/销毁此图表。所以我这样做;

var pieChart = dojo.byId("pieChart");
pieChart.destroy();

这似乎不起作用。我在这里做错了吗?

最好的

3 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,我在一个地方创建了图表,然后想在另一个地方销毁它,但我没有对图表对象的引用。我找到的唯一解决方案是清空用于制作图表的DOM节点:

dojo.empty("pieChart");

答案 1 :(得分:0)

第二个变量将引用DOM对象,而不是存储图表对象的javascript对象。

var pieChart = new dojox.charting.Chart2D("pieChart");
pieChartDom = dojo.byId("pieChart"); //you cannot destroy, 
pieChart.destroy();  //you can destroy, this is original variable

我希望它有所帮助。

答案 2 :(得分:0)

当你使用dojox时dojo.byId将不会返回javascript对象尝试使用dijit.byId我认为它将按照以下建议工作:

var pieChart = dijit.byId(“pieChart”); pieChart.destroy();

我在dojox.form.BusyButton面对同样的问题后,经过努力,我找到了这个......