2016-12-11 2 views
0

ui-grid 3.2.1을 사용하고 있습니다. DOM에서 행이 렌더링 될 때 알려주는 이벤트를 찾기 위해 오랫동안 노력했습니다. 나는 Github에서 그 문제를 많이 보았다. 행이 렌더링되는지 확인하려면 기본적으로 $('.ui-grid-row').length > 0입니다. DOM에서 행을 렌더링 한 후 ui-grid 'renderComplete'이벤트

는 내가 jQuery를보다 아직 결과가없는 경우 모든 콜백이 호출되어, 아무 일없는, 거의 모든 자리 내가 할 수있는에, $timeout(0) 모든 종류의 rowsRendered 이벤트, modifyRows(data)을 시도했다. 최후의 수단으로

나는 매우 비효율적 인 해결책을 발견 - 나는 .ui-grid-row 요소를 포함 .ui-grid-contents-wrapper.html() 변화를 $watch, 내가 하나를 찾을 때, 나는 감시자를 끄고 콜백을 호출합니다. 그것은 나쁘지만 작동합니다.

주 - 행/열에는 내부 지시문이 들어있어 렌더링하는 데 약간의 시간이 걸릴 수 있습니다. 나는 그것이 rowsRendered() 이벤트에 영향을 미쳐야한다고 생각하지 않습니다.

제발, 아무도 도와 드릴 수 있습니까? ui-grid 팀의 도움을받지 못했습니다.

편집 : 보여 plunkr는 rowsRendered()가 호출 DOM에는 .ui-grid-row 없습니다 : https://plnkr.co/edit/8clwC5hkwhAEjvoLZ6vO?p=preview

+0

오류를 시뮬레이트 할 수 있도록 planker를 제공하십시오 – Asqan

+0

에 설명 할 plunkr이 추가되었습니다 (해당 EDIT 참조). – nadavelyashiv

답변

1

rowsRendered 함수 내에서

var rows= gridApi.core.getAllVisibleRows(gridApi.grid); 

을보십시오.