1

在 Kendo TreeList 中拖动节点时,当 e.target 有效(允许拖放)时显示一个加号图标,但当 e.target 无效时显示一个拒绝图标(例如,当您将节点拖动到自身或孩子)。我定义了一些拒绝放弃的条件。现在,我也想根据我的规则将图标更改为拒绝。

对于 Tree View,有这个e.setStatusClass(k-denied)方法。它不适用于树列表https ://docs.telerik.com/kendo-ui/api/javascript/ui/treeview/events/drag 。TreeList 有类似的东西吗?在文档中,没有:https://docs.telerik.com/kendo-ui/api/javascript/ui/treelist/events/drag

--

使用onDrag(e)方法并访问e.target会给出td. 但我需要将dataItem放入tr.

4

1 回答 1

2

我有同样的问题并设法使用拖动事件解决它......

我在树列表中添加了一个拖动功能:

drag: function(e) {
    if ($(e.target).parents('#targetTreeList>div>table').length>0) {
        e.setStatus("k-i-plus");
    }
    else {
        e.setStatus("k-i-cancel");
    }
}

当悬停在 Id='targetTreeList' 的树列表中的节点上时,它会更改图标,当然您可以添加自己的逻辑(我检查过它也是根节点)...

我希望我能提供一点帮助(我在stackoverflow的第一个答案......)

编辑:要获取您可以使用的数据项:

$(e.target).parents('.k-treelist').data('kendoTreeList').dataItem(e.target)

(看起来过于复杂,但这是我让它工作的唯一方法)......

于 2018-10-30T10:48:12.423 回答