创建跨平台的Ajax应用

2008-02-23 09:48:08来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

作者:TurboChen
创建日期:2005-5-10
版本所有

何为Ajax?

Ajax不是什么新技术,是Asynchronous JavaScript and XML的简称. 它是Javascript和xml等技术应用的结合。具体包括:

  • DHTML和CSS
  • 使用文档对象模型(Document Object Model)作动态显示和交互
  • 使用XML和XSLT做数据交互和操作
  • 使用XMLHttpRequest进行异步数据接收
  • 使用JavaScript将它们绑定在一起

有了Ajax技术,我们可以在一定程度上实现Rich Internet Client界面。我们来看一个例子。要设计一个Web界面,用户从下拉式列表中选择一个省份,在另一个清单式列表中显示该省份的城市清单。而这些省份所拥有的城市数据是储存在服务器端数据库中的。在没有Ajax之前,用户在浏览器上每选择一次省份,则发生一次表单提交动作,将所选省份通过表单的POST 请求发送到Servlet/JSP,然后服务器又返回另一个Web页面,里面包含该省份的数据。而用户在浏览器中所看到的就是页面被重新刷新了一次,会有明显的界面迟滞效果。

在Ajax技术出现之后,这一切都成为过去。用户看到的几乎是即时刷新的Web界面。后面我们会详细讨论如何在不同浏览器平台上实现这个例子,以及不同浏览器上编写脚本所就注意的事项。

XMLHttpRequest---Ajax的灵魂

要在浏览器上实现Ajax应用,需要创建一个XMLHttpRequest脚本对象,我们就是通过此对象来让javascript与服务器进行后台的异步交互,而交互的媒介就是XML.

XMLHttpRequest并不是一个W3C规定的标准技术[1], 所以在不同的浏览器上,创建XMLHttpRequest对象的方式也不一样.

1)	var xmlHttp;
2) if (window.XMLHttpRequest)
3) {
4) // 创建 Mozilla/FireFox平台的 XMLHttpRequest 对象
5) xmlHttp = new XMLHttpRequest();
6) } else if (window.ActiveXObject)
7) {
8) // 创建 IE/Windows 平台的XMLHttp对象
9) xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
10) }

以上代码就创建了XMLHttpRequest脚本对象. 其中第5行是FireFox平台上的创建方式, 我只在FireFox平台上测试过, 由于Firefox是采用Mozilla为内核,理论上也可以在Mozilla上运行.第9行是IE上的创建方式.

所幸的是, 虽然创建方式不一样,但这两种对象所提供的方法和属性几乎是一模一样的,


阅读全文: http://www.javagarden.net:8080/Wiki.jsp?page=Ajax2



上一篇: 利用Eclipse编辑中文资源文件
下一篇: Servlet和JSP概述

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:JSP 读取HTTP请求头

下一篇:为Java应用程序添加退出事件响应