【问题标题】:Kendo UI: How to drag and drop multiple items from kendo ui grid to tree?Kendo UI:如何将多个项目从 kendo ui 网格拖放到树?
【发布时间】:2015-01-14 17:00:53
【问题描述】:

我在 cshtml 页面中使用 kendo ui 网格和树,并希望将多行从网格拖放到树中。我可以将一行从网格拖放到树中,但对于多个项目,相同的方法不起作用。

这是我的代码段:

$("#grid").kendoGrid({
    selectable: "row",
    sortable: true,
    pageable: true,
    columns: .......

$("#treeview").kendoTreeView({
    dragAndDrop: true
});

还有我的 kendoDraggable 和 kendoDropTarget 事件:

$("#grid").kendoDraggable({
    filter: "tr",
    hint: function () {
        var g = $("#grid").data("kendoGrid")
        return g.select().clone()
    }
});

$("#treeview").kendoDropTarget({
    drop: droptargetOnDrop
});

上面的代码段用于将一行从网格拖到树中。

但是,如果我更改了多行选择的网格定义,则不再触发 kendoDropTarget 放置事件。

$("#grid").kendoGrid({
    selectable: "multiple",
    sortable: true,
    pageable: true,
    columns: .......

如果我做错了什么以及任何可能的解决方案,请告诉我。

【问题讨论】:

    标签: kendo-ui kendo-grid kendo-treeview kendo-draggable kendo-droptarget


    【解决方案1】:

    网格上的多项选择不能很好地与拖放配合使用,因为可选择事件和拖动事件都会触发可选择事件优先。

    要解决此问题,您可以在拖动时取消可选事件。

    为此,请更改您的 kendoDraggable 配置以在您的 dragstart 函数中包含以下内容:

    dragstart: function (e) {
        $('#grid').data("kendoGrid").selectable.userEvents.cancel();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-04
      • 1970-01-01
      相关资源
      最近更新 更多