ajax给全局变量赋值问题

ajax给全局变量赋值问题


今天在做项目时,遇到了一个问题。我用的是ajax,要在$.ajax({里面给一个全局变量赋值,结果死活赋值不上,纠结了好半天,后来上网查了查,才知道,ajax默认是异步请求,(当要赋值时,此时的值没有拿到,所以赋值不成功)如果要在$.ajax({里面给全局变量赋值,需要改为同步操作,即加上async : false,就可以了。

$.ajax({
    type:"post",
    url:"a.action",
    data: {},
    dataType: 'text',
    async : false,//设置为同步操作就可以给全局变量赋值成功
    success:function(data){
     usersname = data;//usersname为前面声明的全局变量
    }
});