Ajax并不是新技术,而是指这样一种方法,使用现有的几种技术--包括CSS样式表,JavaScript,XHTML,XML和可扩展样式语言转换(XSLT),开发....
在传统的JavaScript编程中,如果希望从服务器上的文件或数据库中得到任何信息,或者向服务器发送信息的话,就必须利用一个HTML表单向服务器GET或者POST数据。而用户则需要
单击"提交"按钮来发送或者是获取信息,等待服务器响应,然后一个新的页面会加载结果。
通过使用Ajax,可以通过JavaScript中的XMLHttpRequest对象,直接与服务器来通信。通过使用HTTP请求,Web页面向服务器进行请求,并得到来自服务器的响应,而不加载页面。用户可以
停留在同一个页面,并且不会注意到脚本在后台请求过页面,或向服务器发送过数据。
Ajax并不是一门新的语言或者技术,它实际上是几项技术按一定的方式组合在一起协作发挥各种的作用,
1 使用XHTML和CSS标准化呈现
2 使用DOM实现动态显示和交互
3 使用XML和XSLT进行数据交换与处理
4 使用XMLHttpRequest进行异步数据处理
5 使用JavaScript绑定和处理所有的数据
Ajax的工作原理是相当于在用户和服务器之间加了一个中间层,使用户操作与服务器响应异步化,并不是所有的请求都是交给服务器处理,像一些数据验证和数据处理等都交给Ajax引擎自己来做,
只有确定需要从服务器读取新数据时再由Ajax引擎代为向服务器提交请求。Google Map是一个典型的Ajax的成功案例,用户与服务器之间的交互是通过异步的请求来完成的,并且页面上仅仅是局部刷新,
而不像传统页面那样整页刷新。
Ajax并不是单一的技术,而是4种技术的集合,要灵活地运用Ajax必须深入的了解这些技术,以及它们在Ajax中所扮演的角色。
1 JavaScript 是一种粘合剂,使Ajax应用的各部分集成在一起,JavaScript是通用的脚本语言,用来嵌入在某种应用之中。在Ajax应用中,JavaScript主要被用来传递用户界面上的数据到服务器端并返回处理结果。
2 CSS:CSS为Web页面元素提供了一种可重用的可视化样式的定义方法。它提供了简单又强大的方法,以一致的方式定义和使用可视化样式。
3 DOM(文档对象模型):DOM以一组可以使用JavaScript操作的可编程对象展现出web页面的结构。通过使用脚本修改DOM,Ajax应用程序可以在运行时改变用户界面,或者高效地重绘页面中的某个部分。
4 XMLHttpRequest对象:XMLHttpRequest对象允许Web程序员从Web服务器以后台活动方式获取数据,数据格式通常是XML,但是也可以很好的支持各种基于文本的数据格式。
Ajax的四种技术中,CSS、DOM和JavaScript这三个都不是新面孔,它们以前合在一起称作为动态HTML,简称DHTML。DHTML可以为整个页面创造新奇古怪的、交互性很强的界面,但是它永远也无法克服需要完全刷新整个
页面的问题。问题在于,如果没有和服务器通信的能力,空有漂亮的界面,还是无法实现一些真正有意义的功能。Ajax除了大量使用DHTML外,还可以发送异步请求,为用户带来了真正的价值。
实现Ajax的步骤
Ajax的主要作用是异步调用和局部刷新,通常需要以下6个步骤。
1 创建 XMLHttpRequest对象,也就是创建一个异步调用对象
2 创建一个新的HTTP请求,并指定该HTTP请求的方法,URL及验证信息
3 设置响应HTTP请求状态变化的函数
4 发送HTTP请求
5 获取异步调用返回的数据
6 使用JavaScript和DOM实现局部刷新