6.1 Ajax 发展历史
AJAX 全称为“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML),是指一
种创建交互式网页应用的网页开发技术。
该技术在 1998 年前后得到了应用。允许客户端脚本发送 HTTP 请求(XMLHTTP)的第
一个组件由 Outlook Web Access 小组写成。该组件原属于微软 Exchange Server,并且迅速
地成为了 Internet Explorer 4.0 的一部分。部分观察家认为,Outlook Web Access 是第一个应
用了 Ajax 技术的成功的商业应用程序,并成为包括 Odd post 的网络邮件产品在内的许多产
品的领头羊。但是,2005 年初,许多事件使得 Ajax 被大众所接受。Google 在它著名的交
互应用程序中使用了异步通讯,如 Google 讨论组、Google 地图、Google 搜索建议、Gmail
等。Ajax 这个词由《Ajax: A New Approach to Web Applications》一文所创,该文的迅速流
传提高了人们使用该项技术的意识。另外,对 Mozilla/Gecko 的支持使得该技术走向成熟,
变得更为易用。
使用 Ajax 的最大优点,就是能在不更新整个页面的前提下维护数据。这使得 Web 应用
程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息,减少网络
阻塞。随着 web2.0 的兴起,RIA(rich interface application )概念的推出,Ajax 的作用越来
重要,甚至还没有找到一个更好的替代品。虽然 Adobe 公司的 as3.0 也推出,但是 flash 庞
大的躯体,在目前拥挤的网络上还有点力不从心。http://www.adobe.com/cn/
6.2 Ajax 的基础应用
首先,我们需要用 JavaScript 来创建 XMLHttpRequest 类向服务器发送一个 HTTP 请求,
XMLHttpRequest 类首先由 Internet Explorer 以 ActiveX 对象引入,被称为 XMLHTTP。 后
来 Mozilla﹑Netscape﹑Safari 和其他浏览器也提供了 XMLHttpRequest 类,不过它们创建
XMLHttpRequest 类的方法不同。
对于 Internet Explorer 浏览器,创建 XMLHttpRequest 方法如下:
xmlhttp_request = new ActiveXObject("Msxml2.XMLHTTP.3.0"); //3.0 或 4.0, 5.0
xmlhttp_request = new ActiveXObject("Msxml2.XMLHTTP");
xmlhttp_request = new ActiveXObject("Microsoft.XMLHTTP");
对 于 Mozilla﹑Netscape﹑Safari 等 浏 览 器 , 创 建 XMLHttpRequest 方 法 如 下 :
xmlhttp_request = new XMLHttpRequest();
在实际应用中,为了兼容多种不同版本的浏览器,一般将创建 XMLHttpRequest 类的
方法写成如下形式:
var xmlHttp = false;//开始初始化 XMLHttpRequest 对象
if(window.XMLHttpRequest){ //Mozilla 浏览器
xmlHttp = new XMLHttpRequest();
if(xmlHttp.overrideMimeType) {//设置 MiME 类别
xmlHttp.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject) { // IE 浏览器
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {