2012-05-08 1 views

답변

27
grid.onBeforeEditCell.subscribe(function(e,args) { 
    if (!isCellEditable(args.row, args.cell, args.item)) { 
    return false; 
    } 
}); 
+1

일 - 훨씬 더 나은 솔루션! 나는 전에이 그리드를 사용 해본 적이 없어서 즉시 해킹에 의지했습니다. [다음은 바이올린입니다] (http://jsfiddle.net/R9fMD/4/) 당신의 대답을 칭찬하십시오. 그것은 단순히 네 번째 행에서 편집을 비활성화합니다. –

+0

환상적인 솔루션 !! 나는 그것을 생각해야했다 : P –

1

당신은 비활성화 또는 getItemMetadata 방법을 사용하여 편집기/포맷/검증 ... 또는 다른 세포의 속성을 변경할 수 있습니다. 이 here에 대한 아주 좋은 문서가 있습니다.
예 :

$scope.data.data.getItemMetadata = function (row) { 
    var item = $scope.data.data.getItem(row); 
    if (item.some_condition) { 
    return { 
     columns : { 
     yourColumnId : { 
      editor : null, 
      formatter : function() { return 'custom formater if some_condition'; } 
     } 
     } 
    }; 
    } 
};