'da grid'e programlı olarak eklendikten sonra geçiş Yapma ExtJS 4.2.1 kullanıyorum ve oldukça basit bir kurulum yapıyorum: JSON tabanlı mağaza ve bu mağazadan okuyan bir ızgarapanel. Bir ekleme düğmesinin tıklama olayı, aşağıdaki işleve çağrılır.Hücre düzenleyicisini ExtJS
Amacım, ızgaraya boş bir satır eklemek ve hemen ızgarapanelde etkinleştirilen Ext.grid.plugin.CellEditing
eklentisini kullanarak düzenlemeye başlamaktır.
var addNewRow = function() {
// start add logic
var row = {
'name': '',
'email': '',
'description': ''
};
store.add(row);
// start auto-edit logic
var index = store.indexOf(row); // -1
var grid = Ext.ComponentQuery.query('gridpanel[itemId=upperPane]')[0];
var plugin = grid.getPlugin('upperPaneEditor');
plugin.startEdit(index, 0);
};
Bu hata ayıklanırken, dizin -1 olarak ayarlanır ve bu çalışmaz. İlk satırın ilk sütununu düzenlemek için plugin.startEdit() işlevini (0, 0) ile test ettim ve iyi çalışıyor. Devam etsin diye çeşitli olay işleyicileri için otomatik düzenleme mantığı olsun deneyin hareketli çalıştı:
- mağazanın
add
olay ekleme sonra ateş ve doğru endeksi yansıyan ama eleman için gridpanel henüz mevcut değildi onu almak için eklenti. - gridpanel en
afterrender
olay gridpanel enadd
olayı harekete eklenti - sonra ateş etmedi ama sadece bir hücreye çift tıklayarak sonra elle düzenleyin. Aynı zamanda kendi içinde bir döngü içinde sona erdi.
Bu noktada başka hangi denemeleri yapacağınızdan emin değilim.
Müthiş çalıştı. Teşekkürler! – anjunatl