jquery中ajax异步时序问题

今天写代码中要保存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;

}

});

async  Boolean

(默认: true) 默认设置下,bulldog所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

posted @ 2011-05-16 15:48  ctou45  阅读(304)  评论(0编辑  收藏  举报