2015-01-14 3 views
2

지금이 항목을 찾기 위해 고심하고 있습니다.그리드에 데이터가로드 된 후 행 열 텍스트를 굵게 표시합니다.

격자 패널의 저장소가로드 된 후 몇 가지 사항을 확인하고 특정 조건이 충족되면 열 행 텍스트를 굵게 표시하려고합니다.

ColumnA ColumnB 
Hello  World 

'안녕하세요'를 굵게 표시하고 싶지만 셀의 HTML을 볼 수 있습니다.

나는 시도는 구글이 CSS 예제를 많이 돌고 첫 번째 셀

grid.view.getCell(0); //nope 
grid.view.getCellByPosition(0); //nope 

를 얻을 수 있지만, 차라리 그냥 텍스트를 얻을 <b>the text</b>로 교체 것입니다.

아이디어가 있으십니까?

답변

2

나는 이것을 위해 renderer을 사용하는 것이 가장 좋을 것이라고 생각합니다.

renderer: function(value, metaData) { 
    value = value.replace('homer', '<b>homer</b>'); 
    return value; 
} 

열 렌더러는 열의 셀에 삽입 값의 기능을 실행하고 결과를 리턴 할 수있는 기회를 갖는 것 인 값을 수신한다. 따라서 서식 및 기타 유용한 것들을 추가 할 수 있습니다. 이것은 ExtJs 4가 코어에 추가 할 때까지 ActionColumns을 생성하는 방법이었습니다.

여기에 사용 방법을 보여주는 Fiddle이 있습니다.

+0

감사합니다. 렌더러에 대해 알고 있습니다. 이전에는로드해야하는 두 개의 데이터 저장소와 관련하여 다른 접근 방식을 취하려고했습니다. –

+0

렌더러는 그리드에서 이런 종류의 작업을 수행하는 * 장소 인 것처럼 보입니다. 내가 생각할 수있는 다른 옵션은 ItemTpl이지만 입력 필드 등에서 주로 사용된다고 생각합니다. 또 다른 옵션은 저장소를 반복하고 값을 변경하는 것이지만 DB에 다시 저장하면 문제가 발생할 수 있습니다. 내가 생각하지 않는 다른 방법으로 접근하지 않을 것입니다. – Scriptable

+0

@FrancisDucharme, 상점에 대한 더 많은 정보와 질문을 업데이트 할 가치가있을 것입니다. 렌더러를 사용하지 않으려한다는 것을 유의하십시오. 사람들이 대답으로 생각하는 첫 번째 것이 될 것입니다. – Scriptable