自己写一个Ajax库:
分4步:
1-创建Ajax对象
2-连接服务器
3-发送请求
4-接收数据
function myAjax(url,funSucc,funFailed){
//第一步,创建Ajax对象
if(window.XMLHttpRequest){ //IE6之外
var oAjax = new XMLHttpRequest();
}else{
//IE6用的是ActiveXObject
var oAjax = new ActiveXObject("Microsoft.XMLHTTP");
};
//第二步,连接服务器,用open(连接方法,请求的文件名,是否异步)
oAjax.open("GET","url",true);
//第三步,发送请求
oAjax.send();
//第四步,接收数据并处理
oAjax.onreadystatechange() = function(){
oAjax.readyState
if(oAjax.readyState == 4){
if(oAjax.status == 200){
funSucc(oAjax.responseText);
}else{
if(funFailed){
funFailed(oAjax.status);
}
}
}
}
}
XMLHttpRequest(): 这个就是Ajax的本质,用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
onreadystatechange()事件:当请求返回时触发这个函数
responseText: 获得字符串形式的相应内容(接收到的数据)
readyState: 存储XMLHttpRequest 的状态。从 0 到 4 发生变化。
- 0: 请求未初始化
- 1: 服务器连接已建立
- 2: 请求已接收
- 3: 请求处理中
- 4: 请求已完成,且响应已就绪
status 状态常见的:
200: “OK”
404: 未找到页面