AJAX回调函数内部给全局变量赋值的问题与解决

来源:互联网 发布:淘宝考研试卷网怎么样 编辑:程序博客网 时间:2024/05/16 10:58

问题描述

       通AJAX调用后,将返回值赋给jsp页面的全局变量,但在下面使用这个全局变量的时候是undefined

问题原因:

      这是由于AJAX同步调用和异步调用机制问题。

如果是异步通信方式(true),客户机就不等待服务器的响应;如果是同步方式(false),客户机就要等到服务器返回消息后才去执行其他操作

也就是说 为 true的时候是异步, 那个全局变量还没有赋值,就去执行下面的 语句了。。所以一直是undefined(刚开始调的时候我整个人都undefined!)。

解决方式

       将AJAX调用设置为同步方式即可

      

$.ajax({    

   type:"GET",

   async:false,

   url:"email.jsp

   dataType:"html",

   timeout:3000,

   success:function(data){if(data=="true"){result=1;}else{result=0;}}

});



原创粉丝点击