AJAX get和回调

时间:2016-01-29 11:34:11

标签: javascript jquery ajax

我试图根据AJAX get函数的回调来创建一个变量;我似乎无法让它工作。我想确保defaults.context在继续执行任何其他代码之前始终具有值。

我做错了什么或如何以正确的方式实现这一目标?

http://www.example.com/someurl?project_id=1&start_date=2016-01-10&end_date=2016-01-20

谢谢你,

Enzio

3 个答案:

答案 0 :(得分:0)

您可以使用类似

的内容
global_vars.template_url + "/includes/load-project-context.php?id=" + id, function(data) {
    obj = JSON.parse(data);
 }).complete(function() {
    callback(obj);
 }).fail(function() {
    callback(error);
 });

这是回调链接。您可以使用其他回调来处理其他用例。

答案 1 :(得分:0)

可能是你应该继续ajax回调中的进一步代码。

// Set defaults
function initDefaults() {
    defaults.currentCase = getCurrentCase();
    getContext(defaults.currentCase, function(object) {
        defaults.context = object;     // Continue your code inside here
        console.log(defaults.context); // Logs the right data
        return object;
    });

    // This will still return `undefined` because this line will be executed
    // before the ajax request finishes. 
    console.log(defaults.context); 
}

答案 2 :(得分:0)

请检查How to know when all ajax calls are complete

你会找到所有你需要的东西,并有很好的解释