`
xsuo
  • 浏览: 123412 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

prototype中的ajax对象应用实例

阅读更多

前两天看到淘宝网"我的淘宝 2.0"发布,无论界面和功能都做得非常cool,在页面切换的时候一看就知道用了AJAX技术。

taobao2.0
AJAX作为一种成熟的技术在越多的商业网站中得到了应用,前途比较光明,前段时间做了一些AJAX的小应用,有些小心得,现在总结给大家分享一下。

AJAX 全称 Asynchronous JavaScript And XML(异步Javascript与XML) ,wikpedia (需代理)有非常详细的描述,这里就不在累赘。主要说一下其应用.AJAX的核心是数据的异步传输,在Internet Explorer 通过 Microsoft.XMLHTTP 组件,而在 Firefox 和 Oprea 则是通过内置的XMLHttpReques 对象进行数据传输,考虑到跨浏览器等特性,我们一般可以用目前比较流行的的 Prototype Javascript Framework 进行开发.

Prototype 是一个开源的 javascript 开发框架,里面封装了大量可以加快开发速度的方法,例如使用$('div')代替getElementById("div"),封装了xmlhttprequest等。许多语言的开发框架如 Ruby on Rails,symfony(PHP) 都集成 Prototype,更有很多如 script.aculo.us , Rico , Behaviour 这样的衍生作品,大大扩充了protopype的功能了,很方便的实现自动完成,元素拖动,闪烁提示,圆角矩形提示框,文字渐隐等功能。使得页面一下"动"了起来,大大提高了用户的使用体验。对于设计者来说,大大减少了在UI方面花的时间,以前为了实现一个效果需要长长的 script 代码,而现在可能只需要一两行了.

在 Prototype 中,主要有两个方法来实行异步数据传输分别是 Ajax.Updater 和 Ajax.Request。

1) Ajax.Updater 将 xmlhttprequest 的返回内容直接绑定页面某个元素中.

JAVASCRIPT:
  1. function getContents()
  2. {
  3. var request_url = "test1.html"; // 需要获取内容的url
  4. var request_pars = '';//请求参数
  5. var myAjax = new Ajax.Updater('result', request_url,{ // 将request_url返回内容绑定到id为result的容器中
  6. method : 'get', //HTTP请求的方法,get or post
  7. parameters : request_pars, //请求参数
  8. onFailure : reportError, //失败的时候调用 reportError 函数
  9. onLoading : loading, //正在获得内容的时候
  10. onComplete : done //内容获取完毕的时候
  11. });
  12. }
  13. function loading()
  14. {
  15. $('loading').style.display = 'block';
  16. }
  17. function done()
  18. {
  19. $('loading').style.display = 'none';
  20. }
  21. function reportError(request)
  22. {
  23. alert('Sorry. There was an error.');
  24. }

简要说明:Ajax.Updater为我们提供加载文档时候的三种状态, onComplete,onLoading,onFailure.我们可以自定义一个函数分别相应这三种不同的状态,这样这点特性,我们就能做出像 Gmail那样很Cool的Loading提示了(Loading的状态时真实的,不是随便搞一个timer唬弄人的).

示例代码:

Hello World : http://dev.yening.cn/ajax/prototype/ajax.html
联动下拉菜单: http://dev.yening.cn/ajax/prototype/menu.html

分享到:
评论

相关推荐

    prototype-AJAX案例

    在"prototype-AJAX案例"中,你可能会看到这些方法的具体应用,以及如何与服务器进行交互,如何处理返回的数据,以及在成功或失败时如何执行相应的回调函数。通过分析案例代码,你可以深入理解Prototype如何简化AJAX...

    ASP基于Prototype的Ajax无刷新登录实例

    ASP基于Prototype的Ajax无刷新登录实例是一个非常适合初学者学习AJAX技术的应用案例。在这个实例中,我们将探讨如何在ASP(Active Server Pages)环境中利用Prototype JavaScript库实现无刷新的用户登录功能,同时...

    ASP源码—基于Prototype的Ajax无刷新登录实例.zip

    在Ajax无刷新登录实例中,Prototype库被用来处理Ajax请求,包括创建XMLHttpRequest对象、发送请求、接收响应以及更新页面内容。 具体到这个实例,可能包含以下步骤: 1. 用户在登录界面填写用户名和密码。 2. 当...

    Ajax(Ajax,jquery,prototype综合).rar

    4. **数据格式**:虽然名字中有XML,但实际应用中,Ajax并不局限于XML格式。JSON(JavaScript Object Notation)现在更常用,因为它与JavaScript语法紧密相连,解析更方便。 5. **jQuery和Prototype**:这两个是...

    prototype开发手册,AJAX学习必备

    "Onion的天空 » prototype中的ajax对象应用实例.files"可能是与这些文档相关的资源文件,可能包含示例代码或其他辅助材料。 学习Prototype和AJAX可以帮助开发者更高效地构建动态网页,提升用户体验。理解它们的...

    基于ASP的基于Prototype的Ajax无刷新登录实例.zip

    学习这个实例,开发者可以了解到如何在ASP中集成Ajax,如何使用Prototype进行DOM操作,以及如何设计和实现无刷新登录的前端交互逻辑。此外,实例可能还包括了数据验证、错误处理和安全方面的考虑,这些都是实现登录...

    prototype ajax提交大数据

    在JavaScript中,通常使用`XMLHttpRequest`对象来实现Ajax通信。然而,当处理大数据时,可能会遇到一些挑战,比如请求体大小限制、性能问题以及内存消耗等。 首先,我们需要了解Ajax的基本工作流程: 1. 创建`...

    ASP实例开发源码—ASP基于Prototype的Ajax无刷新登录实例.zip

    这个实例“ASP基于Prototype的Ajax无刷新登录实例”是关于如何在ASP中利用Ajax技术实现用户登录功能,无需页面刷新即可完成交互。Ajax(Asynchronous JavaScript and XML)是一种在不重新加载整个网页的情况下更新...

    Prototype Ajax学习范例

    这个"Prototype Ajax学习范例"提供了一系列实例,旨在帮助开发者迅速掌握使用Prototype进行Ajax操作的技巧。 Ajax,即异步JavaScript和XML(Asynchronous JavaScript and XML),是一种在无需刷新整个网页的情况下...

    prototype笔记(9)----结合Prototype和JSON开发AJAX

    在本篇"prototype笔记(9)----结合Prototype和JSON开发AJAX"中,我们将深入探讨如何利用Prototype JavaScript库与JSON(JavaScript Object Notation)技术来高效地开发异步JavaScript应用程序,也就是我们常说的AJAX...

    Ajax + JSON + Servlet + prototype.js(实现的一个Ajax实例)

    在这个Ajax实例中,前端使用Prototype.js发起Ajax请求,向服务器发送JSON数据,或者接收服务器返回的JSON数据。由于JSON是JavaScript的一部分,因此在JavaScript中解析JSON数据非常直观,这使得前后端之间的数据交换...

    prototype_Ajax

    在 Prototype.js 中,`Ajax` 对象扮演着关键角色。它定义了一系列方法来处理 AJAX 请求,如 `getTransport`。`getTransport` 方法用于获取一个 `XMLHttpRequest` 对象,这是 AJAX 背后的核心技术,它允许浏览器与...

    经典ajax.prototype.javascript实例

    本实例将探讨如何使用Prototype库中的Ajax功能进行编程。 首先,我们需要理解Prototype库是如何引入到项目中的。通常,我们会在HTML文件的头部引入Prototype的库文件,例如: ```html <script src="prototype.js">...

    prototype 中文开发手册和chm帮助文档

    Prototype 是一个广泛使用的JavaScript库,它为Web开发提供了丰富的功能,简化了DOM操作,事件处理,AJAX交互等任务。这个资源包含了一份PDF格式的"Prototype中文开发手册"和一个CHM格式的"Prototype帮助文档",对于...

    prototype ajax

    Prototype通过简化XMLHttpRequest对象的使用,使得开发者能够轻松地实现页面与服务器之间的数据交换,无需刷新整个页面,从而提高了用户体验。 Prototype库本身是一个轻量级的JavaScript工具集,它的AJAX模块提供了...

    Prototype中英文手册

    9. **案例研究**:提供实际应用场景,帮助开发者理解Prototype在真实项目中的用法。 通过这些手册,开发者可以系统地学习Prototype库,提升其JavaScript编程能力,从而更有效地构建Web应用程序。

    ajax.prototype.javascript实例打包下载

    标题 "ajax.prototype.javascript实例打包下载" 涉及到的是使用Ajax技术和JavaScript进行Web开发的具体实例集合。Ajax,即Asynchronous JavaScript and XML(异步JavaScript和XML),是一种创建动态网页的技术,允许...

    prototype中文帮助文档

    在这个案例中,"prototype.chm"很可能是Prototype.js的官方中文帮助文档,里面详细介绍了每个函数、类和方法的使用方法、参数和返回值,是学习和使用Prototype.js的重要参考资料。用户可以通过搜索、索引或目录浏览...

    JSP+Ajax经典开发实例

    5. **库与框架**:在实际开发中,我们通常会借助于jQuery、Prototype、AngularJS等JavaScript库或框架,简化Ajax的使用,提高开发效率。 **经典实例分析** "JSP+Ajax1"可能包含了各种使用JSP和Ajax结合的实例,比如...

Global site tag (gtag.js) - Google Analytics