【问题标题】:Kendo UI Grid Disable Drag Row SelectingKendo UI Grid 禁用拖动行选择
【发布时间】:2013-02-13 03:19:46
【问题描述】:

目前我有一个带有多行可选的剑道网格。我的问题是由于 Kendo 的拖动行选择功能,我无法从任何列中选择文本。有没有办法禁用剑道网格中的拖动行选择?

非常感谢

【问题讨论】:

    标签: text grid kendo-ui drag


    【解决方案1】:

    我知道这是一个老问题,但我能找到的最佳答案是over on the telerik forums

    我改编了一个角度版本的解决方案,它另外调用了网格更改回调。

    .directive('kendoGrid', ['$', '$parse',
      function($parse) {
        return {
          link: function(scope, element, attrs) {
            if (attrs.multiselect !== undefined) {
              attrs.kSelectable = '""';
              var selectedClass = 'k-state-selected';
              var fn = $parse(attrs.kOnChange);
              $(element).delegate('tbody tr', 'click', function(e) {
                e.preventDefault();
                if (e.ctrlKey || e.metaKey) {
                  $(this).toggleClass(selectedClass);
                } else {
                  $(this).addClass(selectedClass).siblings().removeClass(selectedClass);
                }
                var grid = $(element).data('kendoGrid');
                if (fn) {
                  scope.$apply(function() {
                    fn(scope, {
                      kendoEvent: {
                        sender: grid
                      }
                    });
                  });
                }
              });
              scope.$on(
                '$destroy',
                function() {
                  $(element).undelegate('tbody tr', 'click');
                }
              );
            }
          }
        };
      }
    ])
    

    根据论坛上的评论,传统的 grid.select() 调用不再起作用,因为它需要一个选择模型。

    var grid = kendoEvent.sender;
    var selectedRows = grid.tbody.find(".k-state-selected"); //grid.select();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-29
      • 1970-01-01
      • 2020-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-14
      • 2017-12-21
      相关资源
      最近更新 更多