jQuery中的Ajax的async默认是true(异步请求),如果想一个Ajax执行完后再执行另一个Ajax, 需要把async=false即可.
代码如下:
function TestAjax()
{
var UserName = $("#txtUserName").val();
$.ajax({
url:"AjaxCheckUserName.htm",
async:false,
success:function(data){
alert(data);
}
});
alert('Test');
$.ajax({
url:"AjaxHandler.ashx",
async:false,
data:"UserName=" + UserName,
success:function(data){
$("#divAjax").html(data);
},
error:function(msg){
alert(msg.responseText);
}
});
}
接着看下jquery $.ajax各个事件执行顺序
执行顺序如下:
1.ajaxStart(全局事件)
2.beforeSend
3.ajaxSend(全局事件)
4.success
5.ajaxSuccess(全局事件)
6.error
7.ajaxError (全局事件)
8.complete
9.ajaxComplete(全局事件)
10.ajaxStop(全局事件)