Обновление / уничтожение диаграммы dojox не работает после dojo.byId - PullRequest
0 голосов
/ 06 января 2011

Я создал диаграмму додзё, используя;

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

После этого я хочу обновить / уничтожить этот график. ТАК я делаю;

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

Кажется, это не работает. Я что-то здесь не так делаю?

лучший

Ответы [ 3 ]

1 голос
/ 23 марта 2011

Я столкнулся с той же проблемой: я создал диаграмму в одном месте, а затем хотел уничтожить ее в другом, но у меня не было ссылки на объект диаграммы.Единственное решение, которое я нашел, это очистить DOM-узел, который вы использовали для построения диаграммы:

dojo.empty("pieChart");
0 голосов
/ 25 октября 2011

Поскольку вы используете dojox, dojo.byId не будет возвращать объект javascript, попробуйте использовать dijit.byId. Я думаю, что это будет работать, как указано ниже:

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

та же проблема, с которой я столкнулся при использовании dojox.form.BusyButton после большого усилия, которое я нашел это ...

0 голосов
/ 28 января 2011

Вторая переменная будет ссылаться на объект 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

Надеюсь, это поможет.

...