2010-03-15 35 views
11

我從ExtJS開始。我想讀取所選擇的單元格的值
我使用EditorGrid和這家店尋找這樣的:如何讀取和設置ExtJS Grid中特定單元格的值?

my_store = new Ext.data.JsonStore({ 
    root: 'topics', 
    totalProperty: 'totalCount', 
    idProperty: 'details_id', 

    fields: [ 
     {name : 'index', type : 'int'}, 
     {name : 'inactive', type : 'int'}, 
     {name : 'c_1',  type : 'string'}, 
     {name : 'c_2',  type : 'string'}, 
     {name : 'c_3',  type : 'string'}, 
     {name : 'c_4',  type : 'string'} 
    ], 
    proxy: new Ext.data.ScriptTagProxy({ 
     url: 'my_proxy_url' 
    }) 
}); 

截至目前,這是我用檢索的行和列選中單元格:

var column = grid.getSelectionModel().selection.cell[0]; 
var row = grid.getSelectionModel().selection.cell[1]; 

如何讀取網格中選定單元格的值並更改此值?

回答

12

它完全取決於您的選擇模型。隨着RowSelectionModel就可以得到記錄選定行像這樣:

var sel_model = grid.getSelectionModel(); 
var record = sel_model.getSelection()[0]; 

然後,所有你需要做的是使用set()方法:

record.set("c_1","Test"); 

當然,與EditorGridPanel你」應該將編輯分配給控件,而不是直接。

+0

非常感謝...這是我正在尋找的東西。祝福你 –

-1

@Llyod

按你的答案,

這完全取決於你的選擇模型。隨着RowSelectionModel就可以得到記錄選定行像這樣:

var sel_model = grid.getSelectionModel(); 
var record = sel_model.getSelection()[0]; 

然後,所有你需要做的就是使用set()方法:

record.set("c_1","Test"); 

當然,與EditorGridPanel你應該將編輯分配給控件而不是直接分配。

這工作,但如果我想通過使用列value (e.g. 4 or 5)而不是列名訪問單元格的值。 是否可以做同樣的工作

相關問題