原型和 AJAX 教程
AJAX 简介
AJAX代表同步JavaScript和XML。AJAX 是一种借助 XML、HTML、CSS 和 Java Script 创建更好、更快、交互性更强的 Web 应用程序的新技术。
要完整了解 AJAX,请阅读我们的简单AJAX 教程。
AJAX 原型支持
Prototype 框架使您能够以一种非常简单、有趣且安全的方式处理 Ajax 调用(跨浏览器)。Prototype 还以智能方式处理从服务器返回的 JavaScript 代码,并提供用于轮询的帮助程序类。
Ajax 功能包含在全局Ajax 对象中。该对象提供了所有必要的方法来以简单的方式处理 AJAX 请求和响应。
AJAX请求
实际请求是通过创建Ajax.Request()对象的实例来发出的。
new Ajax.Request('/some_url', { method:'get' });
第一个参数是请求的URL;第二个是选项哈希。method选项指的是要使用的HTTP方法;默认方法是 POST。
AJAX 响应回调
默认情况下,Ajax 请求是异步的,这意味着您必须有回调来处理响应中的数据。发出请求时,回调方法在选项哈希中传递 -
new Ajax.Request('/some_url', { method:'get', onSuccess: function(transport) { var response = transport.responseText || "no response text"; alert("Success! \n\n" + response); }, onFailure: function() { alert('Something went wrong...') } });
这里,两个回调在哈希中传递 -
- 成功时
- 失败时
根据响应的状态相应地调用上述两个调用中的任何一个。传递给两者的第一个参数是本机xmlHttpRequest对象,您可以分别使用其responseText和responseXML属性。
您可以指定两个回调,一个或一个都不指定 - 这取决于您。其他可用的回调是 -
- 未初始化时
- 加载时
- 加载时
- 互动式
- 完成时
- 异常处理
它们都与xmlHttpRequest传输的特定状态匹配,但 onException 除外,它在分派其他回调时发生异常时触发。
注意- onUninitialized、onLoading、onLoaded 和 onInteractive 回调并非由所有浏览器一致实现。一般来说,最好避免使用这些。
AJAX 方法原型
Ajax 对象提供了所有必要的方法来以简单的方式处理 AJAX 请求和响应。这里是与 AJAX 相关的所有方法的完整列表。
注意- 确保您至少拥有 prototype.js 版本 1.6。
编号 | 方法及说明 |
---|---|
1. | AJAX选项
这不是一个方法,但详细介绍了所有 AJAX 请求者和回调共享的所有核心选项。 |
2. | Ajax.PeriodicalUpdater()
定期执行 AJAX 请求并根据响应文本更新容器的内容。 |
3. | Ajax.Request()
发起并处理 AJAX 请求。 |
4. | Ajax.Responders()
全局侦听器存储库通知基于原型的 AJAX 请求的每一步。 |
5. | Ajax.Response()
该对象作为所有 Ajax 请求回调的第一个参数传递。 |
6. | Ajax.Updater()
执行 AJAX 请求并根据响应文本更新容器的内容。 |