Welcome 微信登录

首页 / 脚本样式 / JavaScript / prototype.js的Ajax对象

我想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;
}