I re-open that (very) old thread!
Because I just got the same issue and I can't believe that a destroy does not returns the DOM item to its original state.
As the actual version, we must add this, after destroying scheduler:
$scheduler
.empty()
.removeClass("k-widget k-scheduler k-floatwrap")
.removeAttr("data-role role aria-multiselectable");
And, you understand that this is variable and can change from version to version when we update kendo.
But, a simple "destroy" is invariable to every kendo version.
May I suggest to add an optional parameter to the destroy function, to require to also reset DOM to its original state?
We have single-page application, and we move from Scheduler to Grid, and to keep the DOM footprint as low as possible, we need to destroy it when we don't see it. But, the original DOM source of the scheduler remains, allowing us to re-use it later to re-create the scheduler on-demand.
Look at this example, with Create / Destroy / Clean buttons.
https://dojo.telerik.com/@foxontherock/IXoxEceJ