2013-05-04 68 views
4

背景ExtJS的4控制器网格编辑更改事件

我有一个可编辑的网格,以及管理网格控制器。我想监听所有网格编辑器的更改事件,并在网格没有任何空行时添加新行。

问题

我似乎无法听通过控制电网的编辑更改事件。这是我的代码。

InvoiceController

电网

Ext.define('MyApp.view.InvoiceItemsGrid', { 
    extend: 'Ext.grid.Panel', 
    alias: 'widget.invoice_items_grid', 

    requires: [ 
     'MyApp.view.ProductCombo', 
     'MyApp.view.AccountCombo', 
     'MyApp.view.TaxRateCombo' 
    ], 

    frame: true, 
    bodyBorder: true, 
    title: 'Invoice Items', 
    columnLines: true, 
    forceFit: true, 
    store: 'InvoiceItem', 

    initComponent: function() { 
     var me = this; 

     Ext.applyIf(me, { 
      columns: [ 
       //... 
       { 
        xtype: 'gridcolumn', 
        maxWidth: 100, 
        minWidth: 80, 
        width: 100, 
        dataIndex: 'product_id', 
        text: 'Product ID', 
        editor: { 
         xtype: 'product_combo', 
         actiuon: 'update' 
        } 
       } 
       //... 
      ], 
      viewConfig: { 
       plugins: [ 
        Ext.create('Ext.grid.plugin.DragDrop', { 

        }) 
       ] 
      }, 
      plugins: [ 
       Ext.create('Ext.grid.plugin.CellEditing', { 
        clicksToEdit: 1 
       }) 
      ] 
     }); 

     me.callParent(arguments); 
    }, 

}); 

我能听网的编辑事件,并添加新行,问题与使用网格编辑事件是编辑失去焦点后编辑器内容发生变化时事件就会消失,这不会产生我想要的行为。

'invoice_items_grid': { 
    edit: this.addBlankInvoiceItem 
}, 

问题 我怎么听通过控制器上的网格中的每个编辑的更改事件?

回答

2

你在你的网格编辑器配置有一个错字有

actiuon: 'update' 

应该是:

action: 'update'