2012-07-19 132 views
0

您好,我正在開發一個使用Ext Js的項目,需要編輯網格中的一行。我試圖使用我在Ext的文檔,插件中找到的插件:[Ext.create('Ext.grid.plugin.RowEditing')],但是當我點擊該行時,更新和取消選項出現在網格上,但單元格不可編輯,有人知道發生了什麼嗎?編輯ExtJs網格中的一行

與插件文檔中的例子是這樣的:http://docs.sencha.com/ext-js/4-0/#!/example/restful/restful.html

我迄今爲止代碼:

Ext.define('GridEditavel',{ 

extend : 'Ext.grid.Panel', 
title: 'Grid Editavel', 
store: 'GridStore', 
dockedItems : [ { 
    xtype : 'toolbar', 
    items : [ { 
     xtype: 'button', 
     text : i18n['vds.botao.nova.coluna'], 
     icon : Webapp.icon('add1.png'), 
     iconAlign : 'top', 
     handler : function() { 
      var gridView = Ext.ComponentQuery.query("gridpanel")[1]; 
      Ext.Msg.prompt('Message', 'Enter a column number:', function(
        btn, text) { 
       if (btn == 'ok' && text != null) { 
        var column = Ext.create('Ext.grid.column.Column', { 
         text : text 
        }); 
        gridView.headerCt.insert(gridView.columns.length, 
          column); 
        gridView.getView().refresh(); 
       } else { 
        Ext.Msg.alert('Alert', 'Enter a column number!'); 
       } 
      }); 
     } 
    } ] 
} ], 
columns: [{ 
    header : 'Nome', 
    dataIndex : 'nome', 
    flex : 0.8 
}], 

plugins : [ Ext.create('Ext.grid.plugin.RowEditing') ]}); 
+2

請使用英語,這樣你的答案被更好地理解。 (Por支持,利用línguainglesa para que sua resposta seja melhor entendida。) – 2012-07-19 18:11:41

回答

2

您需要設置編輯器屬性中的列。例如:

columns:[{ 
header:'Nome', 
dataIndex:'nome', 
flex:0.8, 
editor:'textfield' 
}] 

你也可以使用一個配置對象編輯器,像這樣:

columns:[{ 
header:'Nome', 
dataIndex:'nome', 
flex:0.8, 
editor:{ 
    xtype:'combo', 
    store:'somestore' 
} 
}] 
+0

非常感謝,這解決了我的問題! – 2012-07-20 11:02:04

相關問題