2014-01-07 51 views
0

在我的網格中有一個複選框列。通過另一個不同的chechbox,我想切換網格內複選框列的啓用和禁用。複選框列是我網格中的第一列。Gridcolumn啓用/禁用

我做了這樣的事情:

onCheckBoxFieldChange() { 
var testGrid = Ext.getCmp('testGrid'); 
var cm = testGrid.getView().getHeaderCt().getGridColumns(); 

if (newValue === true) { 
    cm[0].setDisabled(true); 
    cm[0].addCls('noClick'); 
} 
else { 
    cm[0].setDisabled(false); 
    cm[0].removeCls('noClick'); 
} 
} 

CSS:

.noClick { 
pointer-events: none; 
} 

我已經嘗試了兩種方法。一個與方法setDisabled和另一個設置一個CSS類。兩種方法都行不通。請幫助...

回答

0

試試這個:

grid.getView().getHeaderCt().child('checkcolumn').setDisabled(newValue); 

這將搜索類型爲checkcolumn然後禁用它的網格的列。

+0

我有一個checkboxSelectionModel與網格關聯,所以這可能無法正常工作。 – Jacob

+0

我檢查過許多類是附加到第一個colmn,它是「x-column-header-checkbox」,所以我嘗試像這樣:grid.getView()。getHeaderCt()。child('。x-column-header-複選框'),但它沒有工作。 – Jacob