如何使用Jquery进行同步JSONP ajax调用

时间:2011-10-18 03:24:59

标签: jquery jsonp

我正在尝试检索将XML数据转换为JSONP的多个帐户的帐户信息。问题是所有的功能都会同时启动,结果会在GET请求进入时填充。以下是简化代码:

$(document).ready(function() {
    GetInfo("user1","pass2");
    GetInfo("user2","pass4");
    GetInfo("user3","pass6");
});

function GetInfo(login, passwd)
{
    login = escape(login);
    login = login.replace("+","%2b");

    passwd = escape(passwd);
    passwd = passwd.replace("+","%2b");

    var url = "...";
    var yql = 'https://query.yahooapis.com/v1/public/yql?q=select%20%2a%20from%20xml%20where%20url=%27' + escape(url) + '%27&format=json&callback=cbfunc'

    $.ajax({
    type:"GET",
    dataType:"jsonp",
    url: yql,
    });
}

function cbfunc(data)
{
   $('#container').html(data.query.results);
}

此代码以随机顺序返回user1,user2,user3。理想情况下,我希望每个调用在进入下一个GetInfo调用之前都是阻塞和完成的。这是我第一次使用JSONP,所以如果有任何技巧我不知道,我会很感激指针。感谢

1 个答案:

答案 0 :(得分:1)