Prototype 和AJAX教程

AJAX简介

AJAX代表 A 同步 Ja vaScript和 X ML. 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;第二个是选项哈希.方法选项指的是要使用的HTTP方法;默认方法是POST.

AJAX响应回调

Ajax请求默认是异步的,这意味着你必须有回调来处理来自a的数据响应.在发出请求时,回调方法在选项哈希中传递 :

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...') }
});

这里,哈希中传递两个回调 :

  • onSuccess

  • onFailure

根据响应状态相应调用上述两个调用中的任何一个.传递给它们的第一个参数是本机 xmlHttpRequest 对象,您可以从该对象分别使用其 responseText responseXML 属性.

您可以指定两个回调,一个或全部 - 这取决于您.其他可用的回调是 :

  • onUninitialized

  • onLoading

  • onLoaded

  • onInteractive

  • onComplete

  • onException

它们都匹配 xmlHttpRequest 传输的某个状态,但onException除外,它在调度其他回调时发生异常时触发.

注意 : 所有浏览器都不一致地实现onUninitialized,onLoading,onLoaded和onInteractive回调.一般来说,最好避免使用它们.

原型AJAX方法

Ajax对象提供了所有必要的方法以简单的方式处理AJAX请求和响应.以下是与AJAX相关的所有方法的完整列表.

注意 : 确保你至少拥有prototype.js的1.6版.

S.No.Method&说明
1.Ajax选项

这不是一个方法,但详细说明了所有AJAX请求者和回调共享的所有核心选项.

2.Ajax.PeriodicalUpdater()

定期执行AJAX请求并根据响应文本更新容器的内容.

3.Ajax.Request()

启动并处理AJAX请求.

4.Ajax.Responders ()

全局监听器的存储库,通知基于Prototype的每一步AJAX请求.

5.Ajax.Response()

作为所有Ajax请求回调的第一个参数传递的对象.

6.Ajax.Updater()

执行AJAX请求并根据响应文本更新容器的内容.