2013-02-27 125 views
3

目前我有一個具有多個可選行的Kendo網格。我的問題是,由於Kendo的Drag Row Select功能,我無法從任何列中選擇文本。是否有任何方法來禁用拖網行選擇在劍道網格?Kendo UI網格禁用拖動行選擇

非常感謝您

回答

0

我知道這是一個老問題,但最好的答案我能找到這個問題是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();