ajax是前后端的桥梁
ajax是无刷新或者局部刷新技术 异步
交互:请求(request)+响应(response)
核心对象、:XMLHttpRequest()
属性
responseText 文本格式的响应信息
responseXML xml格式的额响应信息
readyState 状态
status 响应码
方法:
open(method,url,async) 打开连接(配置请求信息)
method:get porst
url:服务器地址
async:是否异步 一般true
send(params) 发送请求
params:该参数可选 发送给后台的数据
若请求方式为porst
事件:
onreadystatechange 若readystate发生改变 会触发整个事件
readystate会在请求过程中一直改变
0 XMLHttpRequest对象还未初始化
1 XMLHTTPRequest对象初始化完毕,调用了open方法
2 信息装载完毕,调用了send方法,发送请求
3 开始解析服务器响应数据
4 服务器响应数据解析完毕
JSON.parse();将json字符串转化为json对象
JSON.stringify();将json对象转化为json字符串
//第一个参数是get post方式
//url是地址,fn是函数,te是传的内容
function ajax(gp, url,fn,te) {
//创建对象
var a = new XMLHttpRequest();
//传参方式
if (gp == 'get' || gp == 'GET' && te != undefined) {
url = url + '?' + te;
}
a.open(gp, url, 'true');
//事件
a.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
fn(this.responseText);
}
}
//结束
if (gp == 'post' || gp == 'POST' && te != undefined) {
a.send(te);
} else {
a.send();
}
}