设计者或开拓者在事情
IE浏览器对付同一个URL只返回相同结果。由于,在默认情形下,IE会缓存ajax的要求结果。对付同一个URL地址,在缓存过期之前,只有第一次要求会真正发送到做事端。大多数情形下,我们利用ajax是希望实现局部刷新的,以是这就牵扯到一个改进的问题。
如果想每次都获取到最新数据,我们只需担保每次传入的URL不一样。最大略的方法便是通过给url拼接参数。利用math函数的random()方法天生随机数。

比如访问百度www.baidu.com,我们就可以把地址写成www.baidu.com?t=Math.random();或者?t=new Date().getTime();
说到这里,不妨复习一下ajax的基本用法。
泛型的 javascript 代码的 web 页
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();
在报纸上的 Php 开拓职员空缺
GET 还是 POST?
与 POST 比较,GET 更大略也更快,并且在大部分情形下都能用。
然而,在以下情形中,请利用 POST 要求:
无法利用缓存文件(更新做事器上的文件或数据库)
向做事器发送大量数据(POST 没有数据量限定)
发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠
Ajax相应:
要得到做事器的相应,须要利用XMLHttpRequest 工具的 responseText 或 responseXML 属性。
ResponseText:得到字符串形式的相应数据。
document.getElementById(\公众myp\公众).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(\"大众myp\"大众).innerHTML=xmlhttp.responseText;
}
}
Ajax 根式
补充:下面看下浅谈Ajax办理浏览器的缓请安题
Ajax能提高页面载入速率的紧张缘故原由是通过Ajax减少了重复数据的载入,也即在载入数据的同时将数据缓存到内存中,一旦数据被加载,只要没有刷新页面,这些数据就会一贯被缓存在内存中,当提交的URL与历史的URL同等时,就不须要提交给做事器,也即不须要从做事器获取数据,虽然降落了做事器的负载,提高了用户体验,但不能获取最新的数据。为了担保读取的信息都是最新的,须要禁止其缓存功能。
办理方案有如下几种:
① 在Ajax发送要求前加上anyAjaxObj.setRequestHeader(\"大众If-Modified-Since\公众, \"大众0\公众)。
② 在Ajax发送要求前加上anyAjaxObj.setRequestHeader(\"大众Cache-Control\"大众, \"大众no-cache\公众)。
③ 在URL后加上一个随机数:\"大众fresh=\公众 + Math.random();。
④ 在URL后加上韶光搓:\"大众nowtime=\"大众 + new Date().getTime();。
⑤ 如果是利用jQuery,则用$.ajaxSetup({cache:false})。这样页面的所有Ajax都会实行该语句而不须要保存缓存记录。
总结
以上所述是小编给大家先容的IE浏览器关于ajax的缓存机制