Jquery 全局变量Javascript

Jquery 全局变量Javascript,jquery,global-variables,Jquery,Global Variables,我在JavaScript中有一个函数,我尝试更改函数的全局变量,但总是返回相同的初始值3: 例如:起始值3,函数值0,但始终为警报3 var test = 3; jQuery.ajax({ type: "POST", url: "ajax_js.php", data: String, success: function(result){ test = result;

我在JavaScript中有一个函数,我尝试更改函数的全局变量,但总是返回相同的初始值3:

例如:起始值3,函数值0,但始终为警报3

    var test = 3;
    jQuery.ajax({
         type: "POST",
         url: "ajax_js.php",
         data: String,
         success: function(result){
            test = result;
              if(result == 0){
                 $('input[name=user_name]').val('');
                 }
          }
     });
     alert( test);

Ajax中的A表示异步

在请求完成之前,在调用
success
并有机会更新变量之前,正在调用您的警报


尝试将警报移动到回调函数中,看看是否有效。

将您的var测试设置为3;在功能之外,例如:

<script type="text/javascript">
var test = 3;
$('#button').click(function() {
jQuery.ajax({
     type: "POST",
     url: "ajax_js.php",
     data: String,
     success: function(result){
        test = result; 
        alert( test);
          if(result == 0){
             $('input[name=user_name]').val('');
             }
      }
 });
});

</script>

var检验=3;
$(“#按钮”)。单击(函数(){
jQuery.ajax({
类型:“POST”,
url:“ajax_js.php”,
数据:字符串,
成功:功能(结果){
测试=结果;
警报(测试);
如果(结果==0){
$('input[name=user_name]')。val('';
}
}
});
});

你说得对,但是你知道我如何在发出警报之前先调用success函数吗?:)如果您需要在
成功
后发生某些事情,则需要将该代码移到函数
成功
中。