前端学习中,今天学习了blue老师视频里面的ajax,仅作为自己学习的记录
ajax(Asynchronous Javascript And XML)【多个事情可以一起做】是指一种创建交互式网页应用的网页开发技术。
通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。这以为着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
XMLHttpRequest对象用于和服务器交换数据。
请求状态监控
onreadystatechange事件
readyState属性:请求状态
0 (未初始化)还没有调用open()方法
1 (载入)已调用send()方法,正在发送请求
2 (载入完成)send()方法完成,已收到全部响应内容
3 (解析) 正在解析响应内容
4 (完成)响应内容解析完成,可以在客户端调用了
status属性:请求结果
服务器响应:使用XMLHttpRequest对象的responseText或responseXML属性
· responseXML:获得XML形式的响应数据
· responseText :从服务器发送回来的文本
关于浏览器缓存问题
· 缓存造成的原因是因为url地址的不变,所以改变url就能快速的解决缓存导致的页面刷新存在缓存问题。
可以在 oAjax.open('GET','a.txt?b='+new Date().getTime(),true); 加个连接后缀。
window.onload=function(){
var oBtn=document.getElementById('btn');
oBtn.onclick=function(){
if(window.XMLHttpRequest){
var oAjax=new XMLHttpRequest;
}else{
var oAjax=new ActiveXObject("Microsoft.XMLHTTP");
}
oAjax.open("GET","a.txt?b="+new Date().getTime(),true);
oAjax.send();
oAjax.onreadystatechange=function(){
if(oAjax.readyState==4){
if(oAjax.status==200){
alert(oAjax.responseText);
}
}else{
alert("失败了");
}
}
}
}