MooTools JSONP请求完成后,存储阵列为空

时间:2012-08-21 04:15:27

标签: arrays mootools jsonp

path= devicePath + 'offset=' + offset + '&limit=20&';
var deviceRequest = new Request.JSONP({
    url: path,
    callbackKey: 'jsonp',
    log: true,

    onComplete: function(data){
       console.log('Done');
       Gallery.innerHTML = '';
       for (i=0; i<20; i++){
            devices[i]=data[i].device;
       }
       console.log(devices);
    }
}).send();

如果我在此请求发送后尝试访问devices,则会“未定义”。但console.log(Devices)代码正确打印收到的数据。我不知道我的数据去了哪里。

1 个答案:

答案 0 :(得分:0)

您犯了一个常见错误:使用onComplete代替onSuccess

请求完成时会激活

onComplete(即使出现错误),也不会处理JSON。

如果请求成功,

onSuccess将触发,并解析JSON。最后,如果出现服务器错误(400,500等),onFailure将触发。