Mam obecnie GridPanel z wtyczką Ext.ux.RowEditor. W edytorze wierszy istnieją cztery pola: port, adres IP, podsieć i DHCP. Jeśli pole DHCP (pole wyboru) zaznaczonego wiersza jest zaznaczone, muszę uniemożliwić edycję pozostałych trzech pól.Dokonywanie niektórych komórek z ExtJS GridPanel un-editable
Próbowałem wykonać ten kod po uruchomieniu zdarzenia beforeedit, ale bezskutecznie. Znalazłem tylko sposoby, aby uczynić całą kolumnę nie do edycji. Mój kod do tej pory:
this.rowEditor.on({
scope: this,
beforeedit: this.checkIfEditable
});
checkIfEditable:function(rowEditor, rowIndex) {
if(this.getStore().getAt(rowIndex).get('dhcp')) {
// this function makes the entire column un-editable:
this.getColumnModel().setEditable(2, false);
// I want to make only the other three fields of the current row
// uneditable.
}
}
Proszę dać mi znać, jeśli jakieś wyjaśnienie jest potrzebne.
Każda pomoc potencjalnie rozszerzająca RowEditor w celu osiągnięcia docelowej funkcjonalności również byłaby bardzo doceniana!
Udało mi się użyć Twojego rozwiązania, aby moja kolumna była nie do edycji, czego właśnie szukałem. Dzięki! – marklar