我有一个Kendo TreeList,它有以下自定义命令:
{
command: [
{
name: "Edit",
imageClass: "fa fa-pencil"
},
{
name: "Delete",
imageClass: "fa fa-trash"
},
{
name: "createChild",
imageClass: "fa fa-plus"
}
], title: "Actions", width: "300px"
}
我点击创建子按钮,输入我的数据,然后点击"更新"。这就把我带到了Kendo数据源的"create"定义:
create: function (e) {//Called when the create child command is saved
//Collect the data needed for the save
}
此时,我需要获得新行的行索引,但我似乎找不到正确的方法来做到这一点。我试过这样做:
$(e.target).closest("tr").parent().index()
结果是-1
:
var selectedRow = $scope.treelist.select();
var node = $scope.treelist.dataItem(selectedRow);
但节点未定义
任何想法?
事实上,您没有将行引用到create
事件的范围中。但是,您可以在小部件的DOM中找到该元素:
var index = $($("#grid").data("kendoTreeList").element).find(".k-grid-edit-row").index();
活动编辑行接收k-grid-edit-row
类,您可以轻松地在小部件的DOM树中找到它。
工作演示。
不确定这是不是你真正想要的