日期:2014-05-16 浏览次数:20705 次
今天写代码中要保存ajax请求的数据,代码如下:
var changedid = null;
$.get('user/getdepartment','',function(data){changedid=data;},'json');
alert(changedid);//null
结果发现changedid没有保存data,javascript的作用域也没有错啊?通过请教别人知道了问题的原因:异步调用时序问题。
于是换成$.ajax:
?
var changedid = null;
$.ajax({
url: 'user/getdepartment',
type: 'get',
async: false,
dataType: 'json',
success: function(data){
changedid = data;
}
});
?
(默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
?