2016-07-01 30 views
0

In einer Rasterspalte editierbar (ExtJs v4.2.2), wie man den Speicher dynamisch ändert? Der Punkt ist Speicher mit unterschiedlichen params nach Art der Bewegung zu laden (movementTypeId):dynamischer Speicher im Spaltenraster editierbar

das Feld mit diffrent Liste zu befestigen ist ‚Reason‘, Spalten sind:

this.columns = [ 
{ 
    text: 'id', 
    dataIndex: 'movementId', 
    sortable: false, 
    hideable: true, 
    sortableColumn: false, 
    hidden: true, 
    flex : 1, 
    scope:this 
}, 
{ 
    text: 'TypeId', 
    dataIndex: 'movementTypeId', 
    sortable: false, 
    sortableColumn: false, 
    hideable: true, 
    sortableColumns: false, 
    hidden: true, 
    flex : 2, 
    scope:this 
}, 

{ 
    text: 'Reason', 
    dataIndex: 'movementReasonId', 
    sortable: false, 
    hideable: true, 
    sortableColumn: false, 
    field: { 
     xtype: 'combobox', 
     align: 'center', 
     typeAhead: true, 
     triggerAction: 'all', 
     //selectOnTab: true, 
     store: this.storeMovementReasonType, 
     displayField: 'label' 
    }, 
    flex : 3, 
    scope:this 
}, 

]; 

also für jede Zeile, wenn Laden ist auf laden wollte, um zusätzliche param wie:

if(movementTypeId === 89){ 
storeMovementReasonType.getProxy().setExtraParam('dictionaryTypeId',11); 
} 
if(movementTypeId === 94){ 
    storeMovementReasonType.getProxy().setExtraParam('dictionaryTypeId',8); 
} 

ist es möglich? Vielen Dank für Ihre Zeit :)

Antwort

1

Sie wollen die beforeedit Hörer auf Ihrem RowEditing Plugin implementieren:

listeners:{ 
    beforeedit:function(editor , context , eOpts) { 
     var movementTypeId = context.record.get("movementTypeId"); 
     if(movementTypeId === 89){ 
      storeMovementReasonType.getProxy().setExtraParam('dictionaryTypeId',11); 
     } 
     if(movementTypeId === 94){ 
      storeMovementReasonType.getProxy().setExtraParam('dictionaryTypeId',8); 
     } 
     storeMovementReasonType.load(); 
    } 
} 
+0

danke, hört sich gut an – aurny2420289

+0

Auch ich habe das Feld Wert des Speichers auf dem Raster angezeigt werden soll. Ich benutze Renderer, und warte auf den Laden vor dem Zurückgeben von Label, aber die Renderer-Methode wartet nicht auf die Rückkehr .. haben Sie eine Idee? – aurny2420289

+0

@ aurny2420289 Hanc marginis exiguitas nicht caperet. – Alexander