- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
异步 JavScript 和 XML (AJAX) 与
异步 JavaScript 和 XML (AJAX) 与 Java Enterprise Edition 2006.11 前言 使用过 Flickr、GMail、Google Suggest 或 Google Maps 的任何用户都会意识到,将出现一种新型的动态 Web 应用程序。这些应用程序的外观和作用与传统的桌面应用程序非常类似,它们不依赖于插件或特定于浏览器的功能。 传统的 Web 应用程序是一组 HTML 页,必须重新装入这些页面,才能更改内容的任何部分。在过去几年间,诸如 JavaScript 和层叠样式表 (CSS) 之类的技术已经发展成熟,可以有效地使用这些技术创建在所有主要浏览器上运行的动态性很强的 Web 应用程序。 前言 本文档及其相关的解决方案将详细论述这几种技术,目前您可以使用这些技术使 Web 应用程序成为内容更丰富、交互性更强的应用程序,就像桌面应用程序一样 异步JavaScript和XML(AJAX)简介 1 HTML 页使用 JavaScript 可以异步调用装入该页的服务器并获取 XML 文档。然后 JavaScript 可以使用 XML 文档更新或修改 HTML 页的文档对象模型 (DOM)。 最近使用“异步 JavaScript 和 XML” (Asynchronous JavaScript and XML, AJAX) 术语来描述此交互模型。 异步JavaScript和XML(AJAX)简介 2 AJAX 不是一项新兴技术,对于在 Windows 平台上开发 Internet Explorer (IE) 的开发者来说,多年来他们一直在使用这些技术。直到最近,这项技术才被称为 Web 远程处理或远程脚本。一段时间以来,Web 开发者还结合使用插件、Java Applet 和隐藏框架来仿真此交互模型。 而最近发生的变化就是:在所有平台的主流浏览器中都包含了对 XMLHttpRequest 对象的支持。真正的神奇之处在于产生了 JavaScript XMLHttpRequest 对象。 虽然未在正式的 JavaScript 规范中指定此对象,但是目前所有的主流浏览器都支持它。与当前一代浏览器(如 Firefox、IE 和 Safari)中的 JavaScript 和 CSS 支持稍有不同之处在于:它们是可管理的。如果要求您支持较旧的浏览器,则 AJAX 可能不是您的最佳选择。 异步JavaScript和XML(AJAX)简介 3 基于 AJAX 的客户端的独特之处在于,客户端包含了作为 JavaScript 嵌入的特定于页面的控制逻辑。页面基于事件(如装入的文档、鼠标单击、焦点更改,甚至是计时器)与 JavaScript 进行交互。 通过 AJAX 交互,可以清晰地将表示逻辑与数据分开。与每次要显示一个变化时必须重新装入整个页面相比,HTML 页可以根据需要装入很小的数据片段。 异步JavaScript和XML(AJAX)简介 4 AJAX 需要使用一种不同的服务器端体系结构来支持此交互模型。传统的服务器端 Web 应用程序着重为产生服务器调用的每个客户端事件生成 HTML 文档,并且在每次响应时客户端都会刷新并重新呈现完整的 HTML 页。 内容丰富的 Web 应用程序着重于获取 HTML 文档的客户端,该客户端充当一个模板或容器,根据客户端事件使用从服务器端组件检索的 XML 数据在其中添加内容。 使用AJAX交互的用例 1 实时的表单数据验证:在用户提交表单之前,可以在表单中验证要求服务器端验证的表单数据,如用户 ID、序列号、邮政编码,甚至是特殊优惠券代码。 自动完成:表单数据的特定部分(如电子邮件地址、姓名或城市名称)可以在用户键入时自动完成。 主要详细操作:基于客户端事件,HTML 页可以获取有关数据的更详细信息,例如,在不刷新页面的情况下,客户端可以查看个别产品信息的产品清单。 使用AJAX交互的用例 2 复杂的用户界面控件:可以提供不需要页面刷新的控件,如树状结构的控件、菜单和进度栏。 刷新页面上的数据:HTML 页可以轮询服务器中的数据以获取最新的数据,如分数、股票报价、天气预报或特定于应用程序的数据。 服务器端通知:HTML 页可以通过轮询服务器获取事件通知来模拟服务器端推送,包括发送消息通知客户端、刷新页面数据或将客户端重定向到其他页。 使用AJAX交互的用例 3 此列表并不详尽,但是它表明了利用 AJAX 交互,Web 应用程序可以实现比以往更多的功能。尽管该技术有许多引人注目的优点,但是也存在一些缺点: 复杂性:服务器端开发者需要了解,在 HTML 客户端页以及服务器端逻辑中需要表示逻辑,才能生成客户端 HTML 页所需的 XML 内容。
文档评论(0)