您的位置:首页 > 理论基础 > 计算机网络

AJAX之XMLHttprequest对象

2016-01-10 16:10 309 查看
   【概念】      
          XMLHttp对象:xmlhttp提供客户端同http服务器通讯的协议。客户端可以通过xmlhttp对象想http服务器发送请求并使用DOM对象处理回应。其用处是可以更新网页的部分内容而不需要刷新整个页面。
         XMLHttpRequest对象:应用于在后台与服务器交换数据。
 
        XMLHttpRequest对象和其它对象一样,有其自身的属性和方法。
  【属性】
     XMLHttpRequest对象的属性:



  【方法】

     XMLHttpRequest对象的方法:



    【发送请求步骤】
1·既然需要xmlhttprequest对象办事,那就首先需要创建xmlhttprequest对象
2·告诉xmlhttprequest对象:哪个函数会处理该xmlhttprequest对象状态的改变,即将回调函数给xmlhttprequest对象的Onreadystatechange属性赋值
3·指定发送的请求:open()方法
4·将请求发送给服务器:send()方法
5·编写回调函数
 
       【实例分析】
      由于视频教程中提供的实例代码量较多,所以,这里我稍作改动,将第二步和第五步合体实现。

<span style="font-size:18px;"> //测试ajax的xmlhttprequest对象的异步提交方式
function showHint(str) {
var xmlhttp;
if (str.length == 0) {
document.getElementById("txtHint").innerHTML = "";
return;
}
//第一步:创建xmlhttprequest对象
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
//第二步:注册回调方法 并合并回调方法内容
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
}
}
//指定发送的请求
xmlhttp.open("GET", "/test/Index?q=" + str, true);
//将请求发送给服务器
xmlhttp.send();
}</span>


       这只是我目前对XMLHttprequest对象的简单认识,至于它是怎么体现“异步”的?和这种“异步”和其它的“同步”方式之间的差别,还在进一步总结中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: