dojox chart update/destroy does not work after doj

2019-09-04 03:17发布

问题:

I created a dojo chart using;

var pieChart = new dojox.charting.Chart2D("pieChart");

Afterwards I want to update/destroy this chart. SO I do;

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

This seems to be not functional. Am I doing something wrong here?

best

回答1:

As you're using dojox so dojo.byId will not return javascript object try using dijit.byId I think it'll work as suggested below:

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

the same problem I was facing with dojox.form.BusyButton after a great effort I found this...



回答2:

I ran into this same problem, where I created the chart in one place and then wanted to destroy it in another, but I didn't have a reference to the chart object. The only solution I found is to empty the DOM node you used to make the chart:

dojo.empty("pieChart");


回答3:

The second variable will reference DOM object, not the javascript object that store chart object.

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

I hope it helps.