通过gridOptions API以编程方式禁用ag-grid复选框

Avi*_*ram 5 ag-grid

我有一个专栏 checkboxSelection=true

在某些情况下,并且通过API,我想确定该复选框是否为只读,即我无法选中/取消选中。

这可能吗?

row*_*adz 6

如果有人仍在寻找答案,我找到了一个简单的解决方案,

在您gridOptions添加以下内容

gridOptions = {
columnDefs: [
  {
    checkboxSelection: true,
    cellStyle: params => 
      params.value === 'YOUR_VALUE' ?  
          {'pointer-events': 'none'}
          : ''
   }
 ]  
};
Run Code Online (Sandbox Code Playgroud)


Ale*_*den 2

属性checkboxSelection可以是布尔值或函数。

https://www.ag-grid.com/javascript-grid-column-properties/#gsc.tab=0

通过使用函数,您可以基于行显示或隐藏复选框:

checkboxSelection = function(params) {
   // add your cancheck-logic here
   if (params.data.yourProperty) {
      return true;
   }
   return false;
}
Run Code Online (Sandbox Code Playgroud)

无法开箱即用地禁用复选框。一种可能的方法是将复选框重置回其原始状态:

onRowSelected:(params) => {
    if(params.data.yourProperty && params.node.isSelected())
        params.node.setSelected(false);
}
Run Code Online (Sandbox Code Playgroud)

  • 亚历山大,谢谢!我的意图是禁用它而不是隐藏它 - 因为我的一些复选框已选中但无法取消选中...... (2认同)