2011-09-11 5 views
1

새로 삽입 된 행을 강조 표시하는 방법에 대한 아이디어가 있으십니까?Extjs 그리드 새로 삽입 된 행을 강조 표시하는 방법?

나는 상점의 추가 이벤트를 사용하려고했는데 마지막으로 삽입 한 레코드 및 레코드 색인을 제공합니다.

어떻게 그리드 행을 강조 표시 할 수 있습니까?

이것은 상점입니다.

Ext.create('Ext.data.Store', { 
    model : 'invoice_model', 
    storeId : 'invoice_store', 
    proxy : { 
     type: 'memory' 
    }, 
    listeners : { 
     add : function(s, r, i){ 
      console.log(r) 

     } 
    } 
}); 

감사

귀하의 추가 기능에서

답변

4

(따라서, 격자의 행 인덱스)

Ext.fly(myGrid.getView().getNode(i)).highlight("highlight color", { 
      attr: 'color', duration: 5000 
     }); 

그러나, 삽입 된 레코드는 항상 처음에있을 예정된다면 레코드가 추가 된 후에 행이, 당신은 단지 첫 번째 지정할 수 있습니다

Ext.fly(myGrid.getView().getNode(0)).highlight("highlight color",{ 
       attr: 'color', duration: 5000 
      }); 

은 행의 배경 색상을 강조하기 위해, 당신은 새로 삽입 된 행에 하이라이트 클래스를 추가 할 수 있습니다

CSS를 :

.myHighlight{ 
     background : your-highlight-color 
    } 

하면 JS가

Ext.fly(myGrid.getView().getNode(0)).addCls("myHighlight"); 

하고 제거하여 강조 할 :

Ext.fly(grid.getView().getNode(0)).removeCls("myHighlight"); 
+0

아니다 고마워요. –

2

을 원하는대로
Ext.fly(myGrid.getView().getNode(r.getId())).highlight("0000ff", { attr: 'color', duration: 2 });

변경 하이라이트 설정을 시도

편집 스토어의 추가 이벤트가 우리에게 배열을 제공

rec 추가 된 ords. 모든 항목을 강조 표시하려면 배열을 반복하고 배열의 각 레코드에 대해 위의 코드 조각을 호출하십시오. 특정 (첫 번째 또는 마지막 것)을 강조 표시하려면 배열에서 가져 와서 위의 코드 조각을 호출하십시오. 위의 스 니펫에서 r은 특정 레코드를 나타냅니다. "I"는 격자의 레코드의 인덱스 가정

+0

감사 답변을 시도하고 불을 지르고에서 오류가 메신저 r.getId 함수 –

관련 문제