ajax调用后,全局变量不会更改

时间:2014-09-16 11:44:54

标签: javascript jquery ajax

我正在使用以下代码

var lockonscreens = 1;

jQuery(document).ready(function(e) {
    var noOfSelection = 0; 

        if(lockonscreens == 0){
            // some stuff
        }
        if(lockonscreens == 1){
            // some stuff
        } 

});

function ajaxcall(){
    jQuery.ajax({
        url:
        type:
        data:
        async: false,
        success: function(data){
            lockonscreens = data;
        }
    });
}

jQuery("#").click(function(){
ajaxcall();
});

我使用上面的代码通过ajax获取一些数据并将其设置为变量,并根据该变量发生单击事件代码。

但是在ajax调用中,全局变量值不会被更改。 即使数据在ajax中发生变化,它仍然保持不变。

任何人都可以告诉我这是什么问题以及如何纠正它?

1 个答案:

答案 0 :(得分:1)

请记住ajax是异步,所以如果你调用ajaxCall()而接下来调用另一个函数,ajax会启动对服务器和函数结束的调用。

当服务器响应时,执行success:之后的代码。

确保在success:功能

中调用该功能