升级到最新版本的KendoUI后,我遇到了KendoUI Treeview的问题。
示例代码:
<script type="text/javascript">
var node1, node2;
function onSelect(e) {
node1 = e.node;
addViews();
}
function addViews() {
if (node1 != null) {
var treeview1 = $("#TreeAvailable").data("kendoTreeView");
var treeview2 = $("#TreeSelected").data("kendoTreeView");
treeview1.remove(node1); // *JavaScript Error as soon I remove the node*
}
}
我在kendo.web.min.js中调用 treeview1.remove(node1)后出现“JavaScript错误”无法获取未定义或空引用的属性'。
调试器停在:
return arguments.length?(n=e(n,r).closest(P),r.find(".k-state-selected").each
(function(){vare=i.dataItem(this);e.set("selected",!1),delete e.selected})
最新版本的KendoUI发生了哪些变化?我该如何解决?
非常感谢。
答案 0 :(得分:1)
问题是您正在尝试删除正在选择的节点。删除节点后,KendoUI仍会继续执行操作并尝试选择您删除的节点(它不再存在)。
您应该调用preventDefault
,如下所示:
function onSelect(e) {
node1 = e.node;
addViews();
e.preventDefault();
}
不要让KendoUI做事。