2012-07-26 7 views
0

저는 그리드가 있고, 두 개의 열이 Name, Age입니다. 이 표에는 여러 행이 있습니다 (예 : 20-30 레코드). 이제 행을 클릭하면 Person의 이름을 가져 와서 Label에 표시해야합니다.그리드에서 행 선택이 작동하지 않습니다.

나는 getRowClass: function(record, rowIndex, rowParams, store)을 사용하면 선택한 행 값의 세부 정보를 얻을 수 있다고 생각했습니다. 그러나 이것은 작동하지 않습니다. 누군가 나를 도울 수 있습니까?

xtype: 'gridpanel', 
          height: 500, 
          width: 800, 
          title: 'Person Grid', 
          store: 'Person', 

          viewConfig: { 
           getRowClass: function(record, rowIndex, rowParams, store) { 
            console.log("Print the selected row data and set to label"); 
            console.log(record); 
            console.log(rowIndex); 
            console.log(rowParams); 
           } 
          }, 
          columns: [ ..... 

답변

0

여기서 수행하는 작업은 실제로 이러한 셀을 렌더링하는 방법을 변경하는 것입니다. 그러므로 기본적으로 getRowClass은 그리드가 렌더링 될 때 각 행에 대해 한 번 호출됩니다.

그리드 selectionchange을 듣고 선택한 행을 가져와야합니다.

0

내가 이해한다면 당신은이를 사용할 수 있습니다

yourGrid.getSelectionModel().on('selectionchange', function(grid, model, object) { 
    var model = model[0].data; 
    yourPanel.getForm().findField('fieldName').setValue(model.name); 

}); 

yourPanel 해당 필드가 포함되어 패널과 형태에있는 필드를 가정합니다.

관련 문제