• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ajax的 IE cache 相关问题解决
    运用Ajax做了一个名字检验,第一次是有效的,但是提交过后,再检验一次,结果就不对了,是由于IE的cache的原因。
    复制代码 代码如下:

    function verify() {
    $.ajax({
    //issue for IE cache; timestamp=" + new Date().getTime()
    url:"checkGroupName?timestamp=" + new Date().getTime(),
    async: true,
    data:"groupName=" + $("#cn").val()+"groupTypeForDetail="+$("#groupType").val()+"prefix="+$("#p").val(),
    dataType:"html",
    success:function(data){
    if(data==1){
    $("#result").html("font color='green'>Group name["+$("#p").val()+ $("#cn").val()+"]Valid/font>");
    $("#email").val($("#p").val()+ $("#cn").val()+$("#emailHidden").val());
    $('#subData').removeAttr("disabled");
    }else if(data==2){
    $("#result").html("font color='red'>Group name["+$("#p").val()+ $("#cn").val()+ "]already existed./font>");
    $('#subData').attr('disabled',"true");
    }else{
    $("#result").html("font color='red'>Group name can not be empty./font>");
    $('#subData').attr('disabled',"true");
    }
    }
    });
    }

    原理
    Firefox 每次 request 都会重新再回一次 server 取得最新的数据,但是 IE 就不一样了,它会 cache 住之前得到的数据,只有第一次 request 时会真正的去 server 读取数据,导致ajax数据不会随时间而更新….
    解决方案(从网上收集的)
      1、在服务端加 header("Cache-Control: no-cache, must-revalidate"); 或者用下面的组合更好一些:
    复制代码 代码如下:

    header("Expires: Sat, 1 Jan 2005 00:00:00 GMT");
    header("Last-Modified: ".gmdate( "D, d M Y H:i:s")."GMT");
    header("cache-Control: no-cache, must-revalidate");
    header("Pragma: no-cache");

      2、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("If-Modified-Since","0");
      3、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("Cache-Control","no-cache");
      4、在 Ajax 的 URL 参数后加上 "?fresh=" + Math.random(); //当然这里参数 fresh 可以任意取了
      5、第四种方法和第三种类似,在 URL 参数后加上 "?timestamp=" + new Date().getTime(); //推荐使用这种方式,我用的就是这种,个人认为比较方便。
      6、用POST替代GET:不推荐
    您可能感兴趣的文章:
    • 发布三个ajax相关的函数,包括无刷新提交表单等
    • IIS里的AJAX相关的设置
    • jquery $.ajax相关用法分享
    • ajax上传时参数提交不更新等相关问题
    • js jquery ajax的几种用法总结(及优缺点介绍)
    • 浅谈Ajax相关及其优缺点
    上一篇:jquery ajax提交表单从action传值到jsp实现小结
    下一篇:AJAX避免用户重复提交请求实现方案
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ajax的 IE cache 相关问题解决 ajax,的,cache,相关,问题,解决,