0

您好,我正在使用 Ext Js 开发一个项目,该项目需要在网格中编辑一行。我正在尝试使用在 Ext 的文档中找到的插件 plugins: [Ext.create ('Ext.grid.plugin.RowEditing')] 但是当我单击该行时,网格上会出现更新和取消选项,但是单元格不可编辑,有人知道发生了什么吗?

带有插件的文档中的示例是这样的: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') ]});
4

1 回答 1

2

您需要在列中设置编辑器属性。例子:

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

您还可以为编辑器使用配置对象,如下所示:

columns:[{
header:'Nome',
dataIndex:'nome',
flex:0.8,
editor:{
  xtype:'combo',
  store:'somestore'
}
}]
于 2012-07-20T04:50:02.937 回答