본문 바로가기
내컴퓨터/컴퓨터사용하기

ajax 새로고침 안될때

by 글쓴e 2015. 11. 8.

ajax로 데이터를 받아와서 jqgrid를 그리고,

jqgrid의 row를 추가하거나 삭제하면 jqgrid가 갱신되도록 기능구현을 했다.

내가 테스트하는 ie버전은 11.

고객의 ie버전은 9.

그런데 나는 추가/삭제시 jqgrid 새로고침이 아주.잘 되는데..

고객은 계속해서 추가/삭제시 기존 데이터가 보여진다며 문제제기를 하였다.

ie9에서 테스트 할 수있는 상황도 아니었고,

고객과도 멀리 떨어져있는 상태라서 답답할 노릇.

로그를 보내달라고 하였는데,

insert, delete 쿼리 이후 select 쿼리날리는 로그가 없는게 아닌가!!

고객님, 로그를 다 보내주세요. 몇번을 요청해도...

insert/delete 로그뿐..select로그는 없다.

고객님, 이게 로그 전부 맞나요?

-네

답답해 미칠노릇.

그때 문득, 혹시, cache때문인가? 하는 생각이 들었고..

get방식으로 통신하던 ajax를 post로 바꿨더니 잘 된단다!!!

ajax가 캐시때문에 데이터 새로고침이 안되는 문제는 처음 겪어봤다.

알면 금방고치지만, 몰랐다면 시간을 엄청 잡아먹을뻔한 버그.

특히나 ie버전에 따라 동작이 달라지는 문제는 정말 짜증나는 것 같다.

혹시 지금 개발중인데 ajax 데이터 갱신이 안되는 문제가 발생한다면

ajax의 통신방법이 get방식이 아닌가 확인해보자.

get방식이라면 post방식으로 바꾸거나,

ajax 옵션중 cache:false로 설정해보자.