对JQuery和JS变量有一些误解。简单的例子:

function someFunc(){

   var flag = true;

    $(function(){
        $.post("/some/address/", {} ,function(data){
            if( data == false){
                flag = false;
            }
        });
    });
   if(flag == false){
      return false;
   }
}

主要问题是Jquery函数中变量标志的可访问性。我总是得到等于true的相同标志值。如何做到这一点?如何使全局变量对于JS和JQuery可见?

最佳答案

我认为您的问题实际上不是范围之一;我认为您的问题是post函数是异步的。也就是说,它会在服务器上获取数据,并在数据返回时(可能需要一段时间)运行回调函数(更新您的标志)。但是与此同时,周围的功能仍在继续;它不等待post返回。因此标志更新在外部函数返回后发生。

09-30 15:15
查看更多