创建Ajax对象的三个类
Ajax.Request
构造函数:Ajax.Request(Url,options);
url :服务器地址
options :method(只能为小写的'post'|'get')
:parameters:参数(name = value形式)
:onComplete:回调函数
:asynchronous:是否异步(true;false)
:onLoading: 1
:onLoaded: 2
:onInteractive: 3
:onComplete: 4
:onSuccess: 200|304
:onFailure 500|404...
其它属性:
Events :XMLHttpRequest 对象readystate的5个属性
transport:本次交互使用的XMLHttpRequest对象
Ajax.Updater
这是对Ajax.Request对象的简写,无需再指定回调函数,自动把服务器响应显示到指定的容器中
构造函数:Ajax.Updater(containers,url,options);
containers:
可以是一个HTML元素,这样无论成功失败都会显示在这里
可以是两个属性:success:成功时显示的元素
failure:失败时显示的元素
- var myAjax = new Ajax.Updtaer(
- {
- success:'successtext';
- failure:'failuretext'
- },url,
- {
- method:'post',
- parameters:params,
- onLoading:function(){},
- on......
- }
- );
url :服务器地址
options :method(只能为小写的'post'|'get')
:parameters:参数(name = value形式)
:onComplete:回调函数
:asynchronous:是否异步(true;false)
:onLoading: 1
:onLoaded: 2
:onInteractive: 3
:onComplete: 4
:onSuccess: 200|304
:onFailure 500|404...
:evalScript true|false 是否执行服务器响应中包含的javascript代码
代码必须要写成匿名函数形式
meth = function(){}
Ajax.PeriodicalUpdater
是一个周期性的Ajax.Updater类,周期的向服务器发送请求
构造函数:Ajax.PeriodicalUpdater(containers,url,options);
基本和AjaxUpdater类相同,options参数有所区别:多了两个属性
:frequency:多少秒发送一次请求
:decay:相同请求,则发送时间有所改变(待看)
Ajax事件监听器
Ajax.Responders
方法:
register(handler):注册一个事件处理器
unregister(handler):删除一个事件处理器
dispatch(callback,request,transport,json):(待看)
- var myGlobalHandlers = {
- //建交Ajax交互时处发改属性指定的方法
- onCreate:function(){
- Element.show('Loadingimg');
- },
- //交互失败时处发改属性指定的方法
- onFailure:function(){
- alert('对不住您!/n页面加载出错了!');
- },
- //交互成功时处发改属性指定的方法
- onComplete:function(){
- if(Ajax.activeRequestCount == 0){
- Element.hide('Loadingimg');
- }
- }
- //为Ajax对象绑定全局的事件处理器
- Ajax.Responders.register(myGlobalHandlers);