Dojo开发(六)

调用ajax请求

Dojo提供如下四个函数

xhrGet
xhrPost
xhrPut
xhrDelete

使用方式都大同小异,接受一个属性配置
url:请求的url地址。
handleAs:允许响应处理的格式,默认是text,也支持json,javascript,xml。
form:form元素的引用或者字符串ID,form中每个字段的值将被一起作为请求体发送。
content:传递给请求体中的其他参数。

回调函数

load:返回成功响应时调用,响应数据和请求对象作为参数被传递到这个函数。
error:如果 Ajax 请求出现问题,该函数将被调用。如果在 Ajax 请求中定义的 URL 无效、请求超时或者发生其他 HTTP 错误,这将会出现。错误消息和请求对象被作为参数传递。
handle:该函数允许您将加载和错误回调函数合并到一个函数中(如果您确实不关心请求结果是成功或是出现错误,这将非常有用)。

示例代码

{
    count: 4,
    people: [
        {
            first_name: "Joe",
            last_name: "Lennon",
            age: 25     
        },{
            first_name: "Darragh",
            last_name: "Duffy",
            age: 33
        },{
            first_name: "Jonathan",
            last_name: "Reardon",
            age: 30
        },{
            first_name: "Finian",
            last_name: "O'Connor",
            age: 23
        }
    ]
}
dojo.xhrGet({
    url: "data.json",
    handleAs: "json",
    load: function(data) {
        var table = "<table border=\"1\">";
        table += "<tr><th>Name</th><th>Age</th>
</tr>";
        dojo.forEach(data.people, function(person) {
            table += "<tr><td>";
            table += person.first_name+" "+person.last_name;
            table += "</td><td>";
            table += person.age;
            table += "</td></tr>";
        });
        table += "</table>";
        dojo.place(table, dojo.body());
    }
});

猜你喜欢

转载自blog.csdn.net/huangbaokang/article/details/83623363