2009-12-01 2 views
0

을 ajaxSubmit. 나는 아약스를 원했기 때문에 업로드하기 만하면 전체 페이지를 다시로드 할 필요가 없으며 이미지의 미리보기를 볼 수 있습니다.IE8 캐시 내가 이미지 업로드/디스플레이</p> <p>내가 양식 함수에서 반환되는 내용을 업데이트하고 어디 대상이 사업부 인을 할 다음과 같은 기능을 사용하고

나는 모든 캐시 보인다

문제는 IE 8에, 나는 그것을 자르고, 새로운 대상 (도시하지 않음)에 표시 다른 기능을 수행 미리보기로 표시하는 이미지를 업로드 아약스는 비록 내가 설정하지 않더라도 보여주기위한 유일한 방법은 힘든 일이다. 강제로 캐시하지 않는 방법이 있습니까? 물론 다른 모든 브라우저에서도 정상적으로 작동합니다.

$("#profile-photo").submit(function() { 
     var myOptions = { 
         target: '#preview-target', 
      beforeSubmit: showRequest, 
         success: showResponse, 
         clearForm: true, 
         resetForm:true, 
         cache:false 

       }; 
     $(this).ajaxSubmit(myOptions); 
      return false; 
     }); 

답변

2

나는 제출 캐싱있어 의심, 그것은 이미지 URL을 캐싱 것 가능성이 높습니다. 귀하의 회신에서 새 이미지에 대한 URL을 다시 보내 주시겠습니까? 이 경우, 쿼리 문자열을 추가하려고 : 모든 브라우저를 강제해야

<img src="/my/path/to/my/image.jpg?q=12345" /> 

서버에서 이미지를 다시는-로드합니다.

+0

감사합니다. 그 방법은 작동합니다. – matthewb

1

이것은 GET 요청과 관련된 경우 true입니다. 이 값을 POST으로 변경할 수있는 옵션이없는 경우 가장 좋은 방법은 모든 요청의 타임 스탬프가 포함 된 추가 쿼리 매개 변수를 URL에 동적으로 추가하는 것입니다. Javascript에서는 new Date().getTime()을 사용할 수 있습니다.