如何在Ajax调用中访问变量集

时间:2011-04-28 15:16:00

标签: javascript jquery ajax var

我正在尝试在通过Ajax调用某些PHP代码的函数中设置变量。问题是该变量无法从函数外部访问,所以说。

var startPageSelected = '';

function getSavedStartPage() {
    $.post(webroot + 'home/get_saved_startpage/',
    function(data){
        startPageSelected = $.parseJSON(data);
        alert(startPageSelected); //alert 1
    });
}

function something() {
    alert(startPageSelected); //alert 2
}

因此,当我打电话给 getSavedStartPage 时,“警告1 ”会给我正确的值,但在此之外,例如“警告2 ”我的例子,变量保持为空。我想它与范围和/或异步ajax的东西有关,但我无法弄清楚如何存储我的ajax数据,以便我以后可以从外部访问它。也许有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

您可以将已撤消的数据作为参数传递给您的函数。

function getSavedStartPage() {
    $.post(webroot + 'home/get_saved_startpage/',
    function(data){
        startPageSelected = $.parseJSON(data);
        alert(startPageSelected); //alert 1
        something(startPageSelected);
    });
}

function something(data) {
    alert(data); //alert 2
}