2009-10-01 4 views
1

글쎄, 지금은 매우 거친 버전의 gomoku가 있습니다. Jquery, PHP 및 mysql 데이터베이스를 사용하고 있습니다.HTML jquery 응답이 IE에 캐시됩니다.

사용자가 보드 스퀘어를 클릭하면 조각이 배치됩니다. Ajax 새로 고침은 회전 횟수가 증가되었는지 확인하고 필요한 경우 게시판의 html을 업데이트합니다.

문제는 Internet Explorer (6,8, & (아마도 7))가 첫 번째 방문시 페이지를 캐시합니다. 페이지를 수동으로 새로 고쳐도 캐시 된 콘텐츠는 그대로 유지됩니다.

나는 행운과 HTML 페이지에

<META HTTP-EQUIV="cache-Control" CONTENT="no-cache"> 
<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 

를 사용했습니다. 업데이트를 얻는 유일한 방법은 도구를 통해 파일을 삭제하는 것입니다.

충분한 정보가되기를 바랍니다. 그렇지 않다면 나는 가능한 한 최선의 질문에 답하려고 노력할 것입니다.


업데이트 3 나는 그것이 내가 .ajaxSetup 감사 피닉스, 팀, 그리고 다른 사람을 사용하는 작업을 얻었다.

+0

캐시하지 않으려는 페이지의 헤더를 설정할 수도 있습니다. – Sam152

답변

6

각 시간마다 AJAX 요청 끝에 임의의 숫자를 추가하여 요청 URL을 다르게 지정하십시오.

서버에 제출할 임의의 정보 비트는 숫자 (더 큼), 임의 문자열 또는 타임 스탬프가 될 수 있습니다.

var url = “http://domain?myParameters=values&pseudoParam= "+new Date().getTime(); 

편집 :

당신이 전역 설정을 설정하려면 AJAX 요청에 대한은 당신이 사용할 수있는

jQuery.ajaxSetup(options)

jQuery.ajaxSetup({ cache: false }); 
떨어져 캐시를 설정

각 요청에 대해 @ 팀

에 의해
+0

나는이 좋은 lil 해킹을 위해 +1 –

+0

+1을 말하려고했었다 –

+0

나는 내 스크립트에 ajaxSetup 함수를 어디에 넣을 까? –

2

을 지적 당신이 시도 할 수

jQuery.ajax(options)

를 사용하고 false로 캐시를 설정할 수 있습니다 T "캐시 : 거짓"

$.ajax({url: "url", success: myCallback, cache: false}); 
0

그것은 기본 IE 동작입니다 . 나는 요청에 임의의 숫자를 추가하는 것을 피했다.

0

난 그냥 그것을 발견 :

jQuery.ajaxSetup ({캐시 : 거짓});

관련 문제