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·编写回调函数
【实例分析】
由于视频教程中提供的实例代码量较多,所以,这里我稍作改动,将第二步和第五步合体实现。
这只是我目前对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对象的简单认识,至于它是怎么体现“异步”的?和这种“异步”和其它的“同步”方式之间的差别,还在进一步总结中。
相关文章推荐
- linux网络编程之socket(四):使用fork并发处理多个client的请求和对等通信p2p
- HTTP协议
- linux网络编程之socket(三):最简单的回射客户/服务器程序、time_wait 状态
- linux网络编程之socket(二):C/S程序的一般流程和基本socket函数
- linux网络编程之socket(一):socket概述和字节序、地址转换函数
- 深入理解linux网络技术-P179
- LA3027合作网络
- java特种兵读书笔记(2-3)——计算机原理之网络与数据库
- java之httpClient 3.x、AsyncHttpClient1.9.x使用总结
- Unity多玩家游戏和网络功能
- Http请求
- STM32F4上神经网络识别的实现
- 网络知识点
- 基于HttpServlet的用户登录网站 实例
- 从僵尸网络追踪到入侵检测 第4章 Honeyd动态模板防御扫描软件攻击
- [转]简明网络I/O模型---同步异步阻塞非阻塞之惑
- Matlab一个利用神经网络拟合函数的例子
- Unity获取Android和iOS手机系统电量及网络状况
- AFN网络框架(session的简单示例)
- 有关网络包长度与校验和的研究