본문 바로가기

카테고리 없음

[JQuery] jqGrid 초기에 데이터 조회가 되지 않을때

[현상]

페이지 호출 시 jQuery(document).ready에서 jqGrid를 세팅하고 데이터를 읽어와 뿌려주는 함수를 쓸 경우

jqGrid 생성만되고 데이터가 뿌려지지 않는 현상

[원인]

그리드 세팅함수과 데이터 뿌려주기 함수가 동시에 실행되어

그리드가 채 생성되기도 전에 데이터를 뿌려주는 함수가 실행되기 때문

[해결]

그리드를 세팅하는 함수를 호출한 뒤에 딜레이 함수등을 사용하여 약간의 시간이 지난 다음 데이터를 뿌려주는 함수를 호출한다.

ex)

jQuery(document).ready

(
function ()
{
그리드세팅함수();

delay(1000);

데이터가져오는함수();

}
);

function delay(gap) {

var then, now;
then = new Date().getTime();
now = then;
while ((now - then) < gap) {
now = new Date().getTime();
}
}

function delay()의 매개변수 값의 단위는 1밀리초이다.