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(全局事件)