3 回答

首先代码都是按顺序由上往下执行的。
但是ajax方法是个例外。
ajax方法是指一种创建交互式网页应用的网页开发技术。
ajax方法默认是异步执行的,即不管有没返回结果都可以继续往下执行
要想等ajax方法返回结果再执行下面的方法,需要设置为同步async:false
如:
$.ajax({
url:'url',
type:'post',
async:false,
success:function(){},
error:function(){}
});

改为同步方法
$.ajax(url1,{async:false},方法1);
$.ajax(url2,{async:false},方法2);
$.ajax(url3,{async:false},方法3);
只有第1个执行完了才会执行第2个,最后执行第3个。
在第一个没执行完之前,浏览器挂起,后面两个必须等待。

$(document).ready(function() {
var age=0;
$("a").onclick = $.ajax({
type: "GET",//http请求方式
url: "CommServlet",//服务器端url地址
data: "name=weager"+"&age="+age,//发送给服务器端的数据
dataType: "json",//告诉JQuery返回的数据格式(例如xml、json、jsonp、script等)
success: callback //当请求操作完成数据正确返回时调用callback函数。此处的ajax参数还可以有:complete、success、error。complete是指readystate==4时;success是指state==200时;error是指相应出错或者解析服务器数据出错。
//error: function(data){alert(data);}
});
alert("end");
});
这样修改一下。但是不是很通用啊。你可以单独在写个方法重构一下。
相关问题推荐
添加回答
举报