一、AJAX解决了什么问题?
在不刷新网页的情况下去更新数据。
二、核心
if (window.ActiveXObject) {
ajax = new ActiveXObject("Microsoft.XMLHTTP");
} else if (window.XMLHttpRequest) {
ajax = new XMLHttpRequest();
}
三、用法
1、创建
var ajax = new XMLHttpRequest();
2、打开(配置)
ajax.open("参数1","参数2",参数3)
参数1:请求方式(get或post)
参数2:请求地址
参数3:是否异步(true或false)
●同步:上一个任务结束,下一个任务开始,比如alert弹窗
1)ajax.open("get","xxx.php",false)
2)ajax.open("post","xxx.php",false)
●异步
1)ajax.open("get","xxx.php",true)
2)ajax.open("post","xxx.php",true)
3)发送后状态值readystate
0 对象已建立,还未初始化,未调用send;
1 open已调用,未调用send;
2 send已调用,其他未知;
3 请求已发送,正在接收数据;
4 表示数据已经收到;
3、监听(响应)
ajax.onreadystatechange = function() {
console.log(ajax.responseText)
}
4、发送
ajax.send(null) 发送后返回四种参数
1)responseText 作为响应的主体返回的文本;
2)responseXML
3)status
1> 200 成功
2> 202 请求接受,处理未完成
3> 400 语法错误
4> 404 找不到指定url
5> 500 内部服务器错误
4)statusText 跨浏览器时可能不太一致