Ajax
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
Ajax交互
窗口加载完创建的函数
window.onload = function ()
创建 XMLHttpRequest 对象
var xhr = new XMLHttpRequest();
向服务器发送请求
如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:
open打开请求
xhr .open();
open(method,url,async) | 规定请求的类型、URL 以及是否异步处理请求 |
---|---|
method | 请求的类型;GET 或 POST |
url | 文件在服务器上的位置 |
async | true(异步)或 false(同步) |
#绑定onreadystatechange事件
responseText 获得字符串形式的响应数据。
xhr.onreadystatechange = function () {
}
send方法发送
xhr.send();
在绑定事件中函数的内容
if (xhr.readyState == 4&&xhr.status ==200 || xhr.status==304) {
var lastedShops = JSON.parse(xhr.responseText);
var wrapper = document.getElementById("lasted-wrapper");
if(lastedShops.status == 0){
for (var i = 0; i <4 ; i++) {
var shop = lastedShops.data[i];
var item = document.createElement("div");
item.className = "lasted-item";
item.innerHTML = "<img src="+shop.imageHost + shop.mainImage+">"
wrapper.appendChild(item);
}
}else {
alert("服务器很忙");
}
}
}
属性 | 描述 |
---|---|
onready statechange | 存储函数,每当ready State 属性改变时,就会调用该函数 |
readyState | 存有XMLHttpRequest的状态。从0到4发生改变0: 请求未初始化 |
1: 服务器连接已建立 | |
2: 请求已接收 | |
3: 请求处理中 | |
4: 请求已完成,且响应已就绪 | |
status | 200: “OK”;404: 未找到页面 |
服务器响应
responseText:获得字符串形式的响应数据。
responseXML :获得 XML 形式的响应数据。
HTTP状态码
HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。