我使用kendo树视图作为网格行的放置目标。 当在树视图中删除行时,此代码给出以下错误:未捕获的TypeError:item.level不是函数。
我该如何解决这个问题?
<%=Html.Kendo().TreeView()
.Name("treeview")
.Checkboxes(checkboxes => checkboxes
.Name("checkedActivities")
.CheckChildren(true)
)
.LoadOnDemand(true)
.DataTextField("descriptionText")
.DataSource(dataSource => dataSource
.Read(read => read.Action("Activity", "Activity"))
)
.DragAndDrop(true)
%>
<%: Html.Kendo().Grid<Web.Models.Model>()
.Name("grid")
.BindTo((IEnumerable<Web.Models.Model>)ViewBag.List)
.Columns(columns =>
{
columns.Bound(p => p.PK).Title("PK").Hidden(true);
columns.Bound(p => p.CODE).Title("Code");
columns.Bound(p => p.DESCRIPTION).Title("Description");
})
.DataSource(dataSource => dataSource
.Ajax()
.Model(Model => Model.Id(p => p.PK))
)
%>
<script>
$("#grid").kendoDraggable({
filter: "tr",
hint: function (element) {
return element.clone().css({
"opacity": 0.6,
"background-color": "#0cf"
});
}
});
$("#treeview").kendoDropTarget({
drop: function (e) {
console.log("drop");
var dataSourceGrid = $("#grid").data("kendoGrid").dataSource;
var dataSourcetreeview = $("#treeview").data("kendoTreeView").dataSource;
var draggableElement = e.draggable.currentTarget,
dataItem = dataSourceGrid.getByUid(draggableElement.data("uid"));
if (dataItem == undefined) {
dataItem = dataSourcetreeview.getByUid(draggableElement.data("uid"));
}
else {
dataSourcetreeview.add({ descriptionText: dataItem["DESCRIPTION"] });
}
}
});
</script>