如何暂停一个getjson函数,直到另一个完成处理?

时间:2014-04-02 16:10:17

标签: jquery json

我有两个getjson函数,其中一个依赖于另一个的数据。如何停止一个getjson直到第一个完全加载?

2 个答案:

答案 0 :(得分:1)

你为什么要停一个?只需在第一个回调中调用第二个:

$.getJSON(url, function(json) {
    $.getJSON(url, function(json2) {

    });
});

答案 1 :(得分:0)

使用回调函数:

$.getJSON(url, function(json)
{
    // ...    
}).success(function()
{
    // Ready to perform the next operation.
});

你还应该注意getJSON是一个简写的Ajax函数,它相当于(现在使用更好的例子):

var request = $.ajax(
{
    type: "POST",
    url: "",
    contentType: "application/json; charset=utf-8",
    data: JSON.stringify({}),
    dataType: "json",
    async: true
});
request.success(function (msg)
{
    // Make the second request.
}
request.fail(function (jqXHR, textStatus)
{
    // Something went wrong.
});