0
var jsonData = Model.CheckData(); 

// 如果我得到响应,我必须将响应传递给下面的以下函数。

if (!jsonData) {
    Ti.API.warn("JsonData");
    SendRes(jsonData);
}

我面临的问题是,在我首先得到响应之前,函数已经被执行。它应该按顺序发生。

注意:我不能SendRes在我的 Json 上调用该函数OnLoad,因为它在不同的类中。

4

1 回答 1

1

我假设Model.CheckData()是一个 AJAX 调用。ajax 完成后,您可以给它一个回调。您必须修改该调用以接受回调:

//pass a callback to CheckData
Model.CheckData(function(jsonData){
    //do something with jsonData
    if (!jsonData) {
        Ti.API.warn("JsonData");
        SendRes(jsonData);
    }
});

//while in the CheckData function
function CheckData(callback){
    ...ajax call...
    //execute this on receive where "response" is your JSON
    callback(response);
}
于 2012-05-15T14:20:18.133 回答