AJAX之XMLHttprequest对象
【概念】 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对象的简单认识,至于它是怎么体现“异步”的?和这种“异步”和其它的“同步”方式之间的差别,还在进一步总结中。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |