我们在 cardView kendo.ui.Window 项中使用了大约 3 个 DropDownList 组件。当窗口关闭时,我们为每个包含的 DropDownList 项目调用“销毁”方法。
问题是以下代码没有删除所有 DropDownList 的相关 DIVS,这些 DIVS 已附加到文档正文中:
var dropdownlist = $("#dropdownlist").data("kendoDropDownList");
dropdownlist.destroy();
经过一番搜索,我们在 destroy 方法(来自 Telerik)的文档中注意到以下注释: 重要提示:此方法不会从 DOM 中删除 DropDownList 元素。
因此,每次有人打开和关闭我们的 kendo 窗口(卡片视图)时,都会附加许多 DropDownList 的 div 而不会从 DOM 中删除 - 这可能会导致 DOM 出现严重的性能问题。
留在 DOM 中的附加 DIVS 是 - 例如“k-list-container”和“k-animation-container”。
- 我怎么解决这个问题?
- 有没有办法完全销毁每个 DropDownList 的元素(包括从 DOM 中删除所有相关元素)?
- 当我们需要销毁其他 kendo.ui 组件时,这个问题是否相关?(如combobox、dateTimePicker、Tooltip等)由于我们的kendo.ui卡片窗口还包含其他基本的kendo.ui组件。