Ajax对象的相关属性和方法
open(method,url)初始化ajax对象 method:请求方式 get、post url:请求地址 setRequestHeader(header,value)设置请求头信息 header:请求头名称 value:请求头的信息 send(content)发送请求 只有当ajax对象的send方法被调用时,才会发送请求 content:post请求时所传递的数据get请求时这里直接设置为“null” onreadystatechange表示当ajax对象状态码发生改变时所触发的回调函数 它的值是一个函数首地址(匿名函数) xhr.onreadystatechange=function(){ }; 或 xhr.onreadystatechange=display; readyState ajax对象的状态码
ajax对象状态每次发生改变时,都会触发生这个回调函数,只有当状态码为4时,也就是说数据才真正接收完毕,这时我们再对返回来的数据进行处理。 状态码就是一个数字 0—4 0:表示对象已建立,但未初始化1:表示对象已初始化,但未发送 2:已调用send方法进行请求 3:正在接收数据(接收到一部分) 4:接收完成 对状态码的解释用图如下解释: status ajax对象接收到的http响应状态码如:200 302 304 404 statusText ajax对象接收到的http响应状态文本如:ok、not found reponseText ajax对象接收到http响应主体字符串(text/html) responseXML ajax对象接收到的http响应主体内容(text/xml)
解决IE下缓存问题 在IE中,默认有缓存功能,将每次获取的php文件的输出结果缓存下来,下次ajax对象在请求时,如果在缓存目录下,找到对应缓存文件,就直接使用缓存文件。那么应该怎样解决这个缓存问题呢? 随机数 var url='demo05.php?name=zhangsan&n='+Math.random(); var url='demo05.php?name=zhangsan11&n='+new Date().getTime(); xhr.setRequestHeader("If-Modified-Since","0"); header("Cache-Control: no-cache,must-revalidate"); <?php header:向http响应头中写数据 设置http响应头中的cache-control选项“告诉”浏览器:你不要缓存,必须每次重新请求。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |