• IE浏览器关于ajax的缓存机制


      IE浏览器对于同一个URL只返回相同结果。因为,在默认情况下,IE会缓存ajax的请求结果。对于同一个URL地址,在缓存过期之前,只有第一次请求会真正发送到服务端。大多数情况下,我们使用ajax是希望实现局部刷新的,所以这就牵扯到一个改进的问题。

      如果想每次都获取到最新数据,我们只需保证每次传入的URL不一样。最简单的方法就是通过给url拼接参数。利用math函数的random()方法生成随机数。

      比如访问百度www.baidu.com,我们就可以把地址写成www.baidu.com?t=Math.random();或者?t=new Date().getTime();

      ********************************分割线**********************************

      说到这里,不妨复习一下ajax的基本用法。

    *Ajax创建对象:   

     var xmlhttp;
     if (window.XMLHttpRequest){
        //IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        }  else{
        //IE6, IE5
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }                  

    *Ajax请求:

    //GET请求:
    xmlhttp.open("GET","test1.txt",true);
    xmlhttp.send();
    //POST请求:
    xmlhttp.open("POST","demo_post.asp",true);
    xmlhttp.send();

    GET 还是 POST?

    与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。

    然而,在以下情况中,请使用 POST 请求:

    • 无法使用缓存文件(更新服务器上的文件或数据库)
    • 向服务器发送大量数据(POST 没有数据量限制)
    • 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠

    *Ajax响应:

    要获得服务器的响应,需要使用XMLHttpRequest 对象的 responseText 或 responseXML 属性。

    ResponseText:获得字符串形式的响应数据。

    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

    ResponseXML:获得XML形式的响应数据。

    如果来自服务器的响应是 XML,而且需要作为 XML 对象进行解析。

    *Ajax - onreadystatechange : 

    当请求被发送到服务器时,我们需要执行一些基于响应的任务。

    每当 readyState 改变时,就会触发 onreadystatechange 事件。

    在 onreadystatechange 事件中,我们规定当服务器响应已做好被处理的准备时所执行的任务。

    当 readyState 等于 4 且状态为 200 时,表示响应已就绪:

    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
        }
      }
  • 相关阅读:
    android button click事件
    springmvc 多方法访问
    hibernate的save和saveOrUpdate方法
    总结的方法
    oracle 存储过程
    ibatis学习笔记(四)>>>>>>>ibatis使用实例
    ibatis学习笔记(二)>>>>>>>sqlMapConfig.xml文件详解
    ibatis学习笔记(三)>>>>>>>java实体跟表映射.xml文件详解
    ibatis学习笔记(一)>>>>>>>sqlMapConfig.xml文件详解
    spring
  • 原文地址:https://www.cnblogs.com/shaokai7878/p/9511685.html
Copyright © 2020-2023  润新知