ExtJS:EditorGridPanel和ComboBox有问题

时间:2011-01-26 15:55:54

标签: extjs

我在使用extJS和EditorGridPanel方面遇到了一些麻烦。

我使用版本列创建了EditorGridPanel:其中一个可编辑。这个专栏的编辑工作正常,但是当我在gridePanel上的组合中检查一些字段时,它会插入一个“坏”值。

这是我的代码:

this.grid = new Ext.grid.EditorGridPanel({
    frame: true,
    autoHeight: true,
    id: 'grid-editMc',
    clicksToEdit: 1,
    loadMask: true,
    columnLines: true,
    store: this.getStore(),
    sm: selmode,
    cm: new Ext.grid.ColumnModel({
        columns: [{
            header: 'Преподаватель',
            css: 'vertical-align:middle;',
            dataIndex: 'teacher',
            sortable: false,
            editor: this.teacherEdit()
        }],

        defaultSortable: true
    }),
})

例如,我在商店record: id:4, teacher:'Mark'。当我在网格单元格插入4中更改组合时(不是'Mark')。我想要一个单元格值'id'和文本'老师'。

1 个答案:

答案 0 :(得分:1)

你的组合框需要一个渲染器。

在列模型上

,使用组合框

为项添加渲染器
 [
        {
            header: 'Преподаватель',
            css:'vertical-align:middle;',
            dataIndex: 'teacher',
            sortable: false,
            editor: this.teacherEdit(),
                renderer:teacherRenderer

        }
    ]

然后返回传入值所需的值。您可以从记录中获取字段,或者在商店中查找以获取要显示的值,而不是在此处返回常量。

var teacherRenderer = function(value,metaData,record){
       // try record.data.teacher here
       return "displayValue"

}