Kendo UI Grid多选拖放问题

时间:2014-04-01 10:14:55

标签: jquery drag-and-drop kendo-ui kendo-grid

我有一个kendo网格,我正在使用多个选择拖放功能。当我点击行/记录并将其拖动到另一个网格时,它会显示一些阴影,这看起来不太好。我不知道为什么会这样。我想删除这个阴影。请提供一些解决方案。提前谢谢。

我的剑道网格代码是

 $('#MappedSecurity_Grid').kendoGrid({
            scrollable: true,
            sortable: {
                mode: "single",
                allowUnsort: false
            },
            pageable: false,
            selectable: "multiple, row",
            height: 500,
            dataSource: {
                data: data,
                schema: {
                    model: {
                        id: 'Id',
                        fields: { Text: { type: "string" } }
                    }
                }
            },
            columns: [{ field: "Text", title: "<b>" + GetLocalizedString('Category', globalVariables.cultureResources.EOR) + "</b>" }],

        }).addClass("draggable-grid");

我的拖放代码就在这里

 $("#MappedSecurity_Grid").kendoDraggable({
            filter: "tbody > tr",
            group: "gridGroup",
            //axis: "y",
            hint: function (itemClicked) {
                var helper = $('<div class="k-grid k-widget drag-helper"/>');
                if (!itemClicked.hasClass(selectedClass)) {
                    itemClicked.addClass(selectedClass).siblings().removeClass(selectedClass);
                }
                var elements = itemClicked.parent().children('.' + selectedClass).clone();
                itemClicked.data('multidrag', elements).siblings('.' + selectedClass).remove();
                return helper.append(elements);
            }

        });

enter image description here

3 个答案:

答案 0 :(得分:3)

我在Kendo UI listview中多选拖放的情况下遇到了这个问题。

在分析了firebug中的html之后,我发现当我开始拖动所选项目时,有一个带有“k-marquee”类的div。

所以我使用属性display: none覆盖了我的css中的那个类,它对我有用。我的css文件中的代码如下:

.k-marquee{display:none;}

谢谢, Sandeep Parashar

答案 1 :(得分:3)

在kendoGrid构造函数中

dataBound:function(){
   this.selectable.userEvents._events.move = null;//disable marquee
}

答案 2 :(得分:0)

Jershell得到了正确的答案(谢谢!),但是拖放事件仍然遇到其他冲突。

要确保拖放顺畅,请禁用这3个事件:

dataBound: function(){
   this.selectable.userEvents._events.move = null;
   this.selectable.userEvents._events.start = null;
   this.selectable.userEvents._events.end = null;
}