我想prototype.js裡的ajax對象肯定吸引了不少人,大量封裝好的ajax邏輯的類,對於我們這些初學者使用ajax有很大的協助。
以下用一個我的具體使用例子來解釋:效果看這裡
1. Ajax.Request
你可以這樣建立它
複製代碼 代碼如下:
var url = 'http://yoursever/your/your';
var pars = 'id=xxx';
var myAjax = new Ajax.Request(
url,
{method: 'get', parameters: pars, onComplete: yourfunction}
);
parameters表示你要傳遞的參數,比如id=xxx這些。
XMLHttpRequest在HTTP請求期間的階段分為:Loading, Loaded, Interactive, Complete。
Ajax.Request對象在任何一個階段都可以調用你自訂的方法,形式如onxxxxxxx:yourfunction,比如我們上面提到的onComplete,是最常用的。
例子中實際使用的代碼
複製代碼 代碼如下:
function sends(id)
{
c = $('content');
o = $('old-content');
c.innerHTML = "<div id='loading'>載入中...</div>";
o.innerHTML = c.innerHTML;
c.style.display = 'none';
o.style.display = 'block';
var myAjax = new Ajax.Request('content_'+ id + '.html', {method: 'get', onComplete:updates});
}
function updates(response)
{
new Effect.Fade($('old-content'));
new Effect.Appear($('content'));
$('content').innerHTML = response.responseText;
}