jQuery ajax 缓存解决方法

简单的测试代码,使用jquery的ajax类加载一个文本文件。如果IE对文件进行了缓存,则后台修改了1.txt中的内容,前台仍然无法看到更新

<html xmlns="http://www.w3.org/1999/xhtml">

<SCRIPT language=javascript src="js/jquery.js"></SCRIPT> 
<script language="JavaScript"> 
$(document).ready(function() { 
$.ajax({ 
  url: "1.txt",   
  type: 'GET', 
  dataType:'text', 
  success:function(data){ 
alert(data);     
      } 
});

});

</script> 
</html>

解决办法

方法一:把type改成post,并随便设置设置一个参数data: 'a=b'(一定要设置参数,否则仍然会被cache)

方法二:type仍然使用get,但设置cache: false

方法三:通过ajaxSetup来全局设置get方法下的cache 
$.ajaxSetup ({ 
cache: false //close AJAX cache 
});

猜你喜欢

转载自blog.csdn.net/blueskypan/article/details/40424891