首页 > 编程笔记 > JavaScript笔记 > Ajax
JS XMLHttpRequest对象的创建
XMLHttpRequest 对象是 Ajax 的基础,所有现代浏览器均支持 XMLHttpRequest 对象(IE 5、IE 6 使用 ActiveXObject)。XMLHttpRequest 用于在后台与服务器交换数据,这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
在 JavaScript 中,XMLHttpRequest 用于在后台与服务器交换数据。创建 XMLHttpRequest 对象的方法如下:
IE 5.0 版本开始以 ActiveX 组件形式支持 XMLHttpRequest,IE 7.0 版本开始标准化 XMLHttpRequest。不过所有浏览器实现的 XMLHttpRequest 对象都提供相同的接口和用法。
在 JavaScript 中,XMLHttpRequest 用于在后台与服务器交换数据。创建 XMLHttpRequest 对象的方法如下:
var xhr = new XMLHttpRequest ();
IE 5.0 版本开始以 ActiveX 组件形式支持 XMLHttpRequest,IE 7.0 版本开始标准化 XMLHttpRequest。不过所有浏览器实现的 XMLHttpRequest 对象都提供相同的接口和用法。
示例
下面示例使用工厂模式把定义 XMLHttpRequest 对象进行封装,这样只需要调用 creatXHR() 方法就可以返回一个 XMLHttpRequest 对象。//创建XMLHttpRequest 对象 //参数:无 //返回值:XMLHttpRequest 对象 function createXHR () { var XHR = [ //兼容不同浏览器和版本得创建函数数组 function () { return new XMLHttpRequest () }, function () { return new ActiveXObject ("Msxml2.XMLHTTP") }, function () { return new ActiveXObject ("Msxml3.XMLHTTP") }, function () { return new ActiveXObject ("Microsoft.XMLHTTP") } ]; var xhr = null; //尝试调用函数,如果成功则返回XMLHttpRequest对象,否则继续尝试 for (var i = 0; i < XHR.length; i ++) { try { xhr = XHR[i](); } catch(e) { continue //如果发生异常,则继续下一个函数调用 } break; //如果成功,则中止循环 } return xhr; //返回对象实例 }在上面代码中,首先定义一个数组,收集各种创建 XMLHttpRequest 对象的函数。第 1 个函数是标准用法,其他函数主要针对 IE 浏览器的不同版本尝试创建 ActiveX 对象。然后设置变量 xhr 为 null,表示为空对象。接着遍历工厂内所有函数并尝试执行它们,为了避免发生异常,把所有调用函数放在 try 中执行,如果发生错误,则在 catch 中捕获异常并执行 continue 命令,返回继续执行,避免抛出异常。如果创建成功,则中止循环,返回 XMLHttpRequest 对象。
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算