问题描述:
通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;}}
});