1 Ajax对象
1.1 获取Ajax对象
<script> var btu = document.getElementById(‘btu‘); btu.onclick = function(){ //基于 W3C标准 浏览器 var xhr = new XMLHttpRequest(); alert(xhr); //基于IE内核的浏览器, W3C标准浏览器中报错 var xhr = new ActiveXObject(‘Microsoft.XMLHTTP‘); alert(xhr); } </script>
浏览器标准不一样,得到的对象也不一样,我们也不知道客户使用什么样的浏览器,因此,我们需要解决兼容性问题:
<script> try{ var xhr = new XMLHttpRequest(); // w3c的标准方式 IE6及以下不支持 }catch (e){ var xhr = new ActiveXObject(‘Microsoft.XMLHTTP‘); // 微软IE浏览器获取方式 } alert(xhr); // [object XMLHttpRequest] </script>
1.2 ajax对象的属性、方法
1.2.1 属性
readyState: Ajax状态码
0:表示对象已建立,但未初始化,只是 new 成功获取了对象,但是未调用open方法
1:表示对象已初始化,但未发送,调用了open方法,但是未调用send方法
2:已调用send方法进行请求
3:正在接收数据(接收到一部分),客户端已经接收到了一部分返回的数据
4:接收完成,客户端已经接收到了所有数据
status :http响应状态码
200代表成功获取服务器端数据
404未找到页面等等……
statusText :http响应状态文本
reponseText:如果服务器端返回字符串,使用responseText进行接收
responseXML :如果服务器端返回XML数据,使用responseXML进行接收
onreadystatechange:当 readyState 状态码发生改变时所触发的回调函数