ExtJS 5.x:使用弹出窗口编辑网格单元格

时间:2016-01-18 10:51:09

标签: extjs5 tablecelleditor

是否可以为extjs网格中的单元格打开一个弹出窗口(带有表单)以编辑并将其保存到数据库?

这不应该直接更新数据库,但它应该通过网格数据模型来更新数据库。

注意:数据网格还启用了就地编辑功能,并且运行良好。

    listeners: {
        'celldblclick' : function(view, td, cellIndex, record, tr, rowIndex, e, eOpts) {
            var clickedDataIndex = view.panel.headerCt.getHeaderAtIndex(cellIndex).dataIndex;
            var clickedColumnName = view.panel.headerCt.getHeaderAtIndex(cellIndex).text;
            var clickedCellValue = record.get(clickedDataIndex);
            var comment_form = new Ext.form.Panel({
                baseCls: 'x-plain',
                labelWidth: 155,
                //width: 600,
                autoHeight: true,
                defaultType: 'textarea',
                jsonSubmit: true,
                items: [{
                    fieldLabel: 'Add Comment',
                    name: 'comment',
                    allowBlank: false,
                    anchor: '100%',
                }],
            });

            var newPanel = new Ext.Panel ({
                border: false,
                html: "<br />" + clickedCellValue + "<br />",
                autoHeight: true,
            });

            var win = new Ext.Window({
                title: clickedColumnName,
                width: 500,
                autoHeight: true,
                layout: 'fit',
                plain: true,
                bodyStyle: 'padding:5px;',
                buttonAlign: 'center',
                items: form,
                buttons: [{
                    text: 'Update',
                    //disabled: true,
                }, {
                    text: 'Reset',
                    handler:function() {
                        form.getForm().reset();
                    }
                }]
            });

            form.add(newPanel);
            win.show();
        }
    },

0 个答案:

没有答案