ajax.updater 方法有3个参数: ajax.updater(container, url, options)
分别表示 1.控件id;2.请求的url;3.具体如下(可选):
下面的例子用到了success (一切OK的时候才被用到) ,和它同等地位的属性还有一个failure (有地方出问题的时候被用到) 这里没用到。出错时在 onFailure 处调用 reportError 方法。
分别表示 1.控件id;2.请求的url;3.具体如下(可选):
属性 | 类型 | Default | 描述 |
---|---|---|---|
method | Array | 'post' | HTTP 请求方式。get or post |
parameters | String | '' | 在HTTP请求中传入的url格式的值列表。 |
asynchronous | Boolean | true | 指定是否做异步 AJAX 请求。 |
postBody | String | undefined | 在HTTP POST的情况下,传入请求体中的内容。 |
requestHeaders | Array | undefined | 和请求一起被传入的HTTP头部列表, 这个列表必须含有偶数个项目, 任何奇数项目是自定义的头部的名称, 接下来的偶数项目使这个头部项目的字符串值。 例子:['my-header1', 'this is the value', 'my-other-header', 'another value'] |
onXXXXXXXX | Function(XMLHttpRequest) | undefined | 在AJAX请求中,当相应的事件/状态形成的时候调用的自定义方法。 例如 var myOpts = {onComplete: showResponse, onLoaded: registerLoaded};. 这个方法将被传入一个参数, 这个参数是携带AJAX操作的 XMLHttpRequest对象。 |
onSuccess | Function(XMLHttpRequest) | undefined | 当AJAX请求成功完成的时候调用的自定义方法。 这个方法将被传入一个参数, 这个参数是携带AJAX操作的 XMLHttpRequest对象。 |
onFailure | Function(XMLHttpRequest) | undefined | 当AJAX请求完成但出现错误的时候调用的自定义方法。 这个方法将被传入一个参数, 这个参数是携带AJAX操作的 XMLHttpRequest对象。 |
insertion | Function(Object, String) | null | 为了把返回的文本注入到一个元素中而执行的方法。 这个方法将被传入两个参数,要被更新的对象并且只应用于 Ajax.Updater 的响应文本 。 |
evalScripts | Boolean | undefined, false | 决定当响应到达的时候是否执行其中的脚本块,只在 Ajax.Updater 对象中应用。 |
decay | Number | undefined, 1 | 决定当最后一次响应和前一次响应相同时在 Ajax.PeriodicalUpdater 对象中的减漫访问的次数, 例如,如果设为2,后来的刷新和之前的结果一样, 这个对象将等待2个设定的时间间隔进行下一次刷新, 如果又一次一样, 那么将等待4次,等等。 不设定这个只,或者设置为1,将避免访问频率变慢。 |
function getContents()
{
var request_url = "test1.html"; // 需要获取内容的url
var request_pars = '';//请求参数
var myAjax = new Ajax.Updater('result', request_url,{ // 将request_url返回内容绑定到id为result的容器中
method : 'get', //HTTP请求的方法,get or post
parameters : request_pars, //请求参数
onFailure : reportError, //失败的时候调用 reportError 函数
onLoading : loading, //正在获得内容的时候
onComplete : done //内容获取完毕的时候
});
}
function loading()
{
$('loading').style.display = 'block';
}
function done()
{
$('loading').style.display = 'none';
}
function reportError(request)
{
alert('Sorry. There was an error.');
}
Ajax.Updater为我们提供加载文档时候的三种状态, onComplete,onLoading,onFailure.我们可以自定义一个函数分别相应这三种不同的状态。{
var request_url = "test1.html"; // 需要获取内容的url
var request_pars = '';//请求参数
var myAjax = new Ajax.Updater('result', request_url,{ // 将request_url返回内容绑定到id为result的容器中
method : 'get', //HTTP请求的方法,get or post
parameters : request_pars, //请求参数
onFailure : reportError, //失败的时候调用 reportError 函数
onLoading : loading, //正在获得内容的时候
onComplete : done //内容获取完毕的时候
});
}
function loading()
{
$('loading').style.display = 'block';
}
function done()
{
$('loading').style.display = 'none';
}
function reportError(request)
{
alert('Sorry. There was an error.');
}
下面的例子用到了success (一切OK的时候才被用到) ,和它同等地位的属性还有一个failure (有地方出问题的时候被用到) 这里没用到。出错时在 onFailure 处调用 reportError 方法。
<script>
function getHTML()
{
var url = 'http://yourserver/app/getSomeHTML';
var pars = 'someParameter=ABC';
var myAjax = new Ajax.Updater(
{success: 'placeholder'},
url,
{method: 'get', parameters: pars, onFailure: reportError});
}
function reportError(request)
{
alert('Sorry. There was an error.');
}
</script>
<input type=button value=GetHtml onclick="getHTML()">
<div id="placeholder"></div>
function getHTML()
{
var url = 'http://yourserver/app/getSomeHTML';
var pars = 'someParameter=ABC';
var myAjax = new Ajax.Updater(
{success: 'placeholder'},
url,
{method: 'get', parameters: pars, onFailure: reportError});
}
function reportError(request)
{
alert('Sorry. There was an error.');
}
</script>
<input type=button value=GetHtml onclick="getHTML()">
<div id="placeholder"></div>