Domanda

Ho creato un grafico Dojo usando;

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

Successivamente voglio aggiornare/distruggere questo grafico. Faccio così;

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

Questo sembra non essere funzionale. Sto facendo qualcosa di sbagliato qui?

migliore

È stato utile?

Soluzione

Come si sta utilizzando in modo dojox dojo.byId non tornerà provare oggetto JavaScript utilizzando dijit.byId penso che funzionerà come suggerito di seguito:

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

lo stesso problema che stavo affrontando con dojox.form.BusyButton dopo un grande sforzo ho trovato questo ...

Altri suggerimenti

Mi sono imbattuto in questo stesso problema, in cui ho creato il grafico in un posto e poi volevo distruggerlo in un altro, ma non ho avuto un riferimento all'oggetto grafico. L'unica soluzione che ho trovato è quello di svuotare il nodo DOM è stato utilizzato per rendere il grafico:

dojo.empty("pieChart");

La seconda variabile farà riferimento oggetto DOM, non l'oggetto JavaScript che oggetto grafico negozio.

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

Spero che aiuta.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top