ASP.NET WebForms 버전의 jqGrid를 사용하고 있지만 표준 그리드와 동일한 이벤트를 사용할 수 있어야합니다.페이지의 모든 jqGrid가로드되었는지 감지하는 방법은 무엇입니까?
여러 개의 그리드가있는 페이지가 있습니다. 하나 일 수도 있고 여러개 일 수도 있습니다. 10,000 인쇄 (격자에있는 모든 레코드를 표시), A4 용지에 맞추기 위해 크기를 조절하고 window.print()
을 인쇄 한 다음 원래 레코드 수로 돌아가서 다시 그리드의 크기를 100 %로 조정하는 인쇄 단추가 있습니다. .
누락 된 부분은 그렇게하기 전에 모든 그리드가로드 될 때까지 기다릴 필요가 있으므로 window.print()
을 발사 할시기를 아는 것입니다.
나는하지만 분명히 내가 그들 모두를 추적하는 방법을 잘 모르겠어요 VAR를 재설정 각 그리드, 글로벌 var allGridsLoaded = false;
을 가지고 노력하고 VAR를 설정 Load_Complete
이벤트 및 beforePageChange
을 사용했다?
Load_Complete
나는 각 그리드를 반복 할 수 있다고 생각하지만로드 된 경우 가장 명확한 방법은 무엇입니까?
"jqGridLoadComplete"에 바인딩 된 익명 함수 내부에서 전역 함수'Load_Complete'를 호출하는 경우 익명 함수 내에서 카운터가 감소되고 전역 함수가 한 번만 호출되는 것이 좋습니다. 카운터는 0입니다. 즉, 당신은 함수'All_Load_Complete'을 가질 수 있습니다. 함수 호출 수가 적 으면 속도에 긍정적 인 영향을줍니다 (예 : http://www.slideshare.net/madrobby/extreme-javascript-performance 슬라이드 13-18 참조). –
@Tom : 죄송하지만, 당신을 따라갈 수 없습니다. "All_Load_Complete"기능은 "무슨 뜻입니까? 내가 제안한 것은''jqGridLoadComplete ''이벤트 핸들러 내부의 카운터를 감소시키는 것이다. 그래서 당신의 제안은 무엇입니까? – Oleg
그건 나쁘다. 나는 당신이 당신의 대답에서 세 번째 글 머리표를 읽는 글로벌 기능에서 카운터를 감소 시키라고 제안하고 있다고 생각했습니다. –