在javascript中没有setTimeout的变量中定义值之后执行脚本

时间:2014-12-01 09:25:00

标签: javascript jquery html callback

我想在没有setTimeout的变量中定义值后执行脚本。

这是我想要的:

var sessionId;
function AddSessionID(e) {
    sessionId = e;
}

$(function(){
    alert(sessionId);
});

但我得到的价值是未定义的。

如果我为此设置了延迟:

$(function(){
    setTimeout(function(){
        alert(sessionId);
    }, 2000);
});

然后我得到了适当的价值。

但我不想为此设置延迟。因为会话ID是动态的。它取决于服务器。

我需要回电。

这真的是我想要的:

var sessionId;
    function AddSessionID(e) {
        sessionId = e;
    }

    $(function(){
        if (sessionId != undefined) {
            alert(sessionId);
    }
});

1 个答案:

答案 0 :(得分:0)

写一个像这样的回调 -

function AddSessionID(e) {
    sessionId = e;
    sessionIdReadyCallback();
}

function sessionIdReadyCallback(){
 alert(sessionId);
}