페이지를로드하여 div에 넣으려고합니다.Ajax Load -로드를 강제하는 방법
코드 :
$("#test").load("page.php");
문제는 파일 'page.php가'정말 없는 것 같다, 내가 할 때 가끔 이 스크립트를 다시 실행을 장전 한 번 이다을 다시로드하면이 파일이 캐시 또는 이와 유사한 것으로 보입니다.
PHP 요청을 처리하기 때문에 실제로 문제가 발생합니다.
페이지를로드하여 div에 넣으려고합니다.Ajax Load -로드를 강제하는 방법
코드 :
$("#test").load("page.php");
문제는 파일 'page.php가'정말 없는 것 같다, 내가 할 때 가끔 이 스크립트를 다시 실행을 장전 한 번 이다을 다시로드하면이 파일이 캐시 또는 이와 유사한 것으로 보입니다.
PHP 요청을 처리하기 때문에 실제로 문제가 발생합니다.
:
는 여기에 예제 코드입니다. .load
은 그냥 ajax 호출이고 cache
은 기본값으로 true입니다.
$.ajaxSetup ({
cache: false
});
브라우저가 요청을 캐싱 중입니다. 그것은 얻을 것이다 결과를 알고 있다고 생각하기 때문에 요청을 보내지 않습니다.
URL을 수정하려면 동적 인 get
매개 변수를 URL 끝에 추가하십시오. 그러면 브라우저가 매번 새로운 것을 기대하게됩니다. 당신은 ajaxSetup에 캐시하고 필요하지 않을 때 그것을 다시 재설정하지 않도록 강제 할 수
$("#test").load("page.php?v=" + Math.random());
캐시 문제입니다. ajaxsetup을 변경하거나 임의의 문자열로 무언가를 할 수 있습니다.
캐싱이 발생하는 이유는 동일한 URL을 두 번 요청했기 때문입니다. 그것은 이미 그 결과를 가져 왔습니다, 그래서 그것은 단지 캐시의 가치를 얻습니다. 간단한 트릭은 무작위가 someting 추가하는 것입니다 내 자신의 이익을 위해 (jQuery를이 같은 방식에 대해 그것을 않습니다)
을 다른 GET 값을 덮어 쓰지 않기 때문에
내가 밑줄로 사용을 왜 수행 다른 게시물 upvotes 얻을, 그리고 그나마? 내 답장보다 더 좋은 정보는 전혀 없습니다. 내 미래의 게시물에 대해, 내가 옳지 않은 것은 무엇입니까? – Martijn