如何判断ajax操作执行完成
用jquery的getJSON获取ajax数据,代码:
$.getJSON("/Dept.do",{},
function(json) {
$(json).each(function(i){
do some.........
});
set();
}
);
代码中set()是我想在ajax操作执行完成后运行的,但它不等ajax执行完就运行了
要怎么做能让ajax执行完紧接着就运行set方法?
[解决办法]
jquery是默认异步的,可以添加一个参数:async: false
ext默认是异步的,实现同步要重写api
我用的是prototype
new Ajax.Request(url, { parameters : paras, asynchronous : false, onSuccess : function(response) { var json = response.responseText.evalJSON(true); if (json.result) { ret = true; } } });
[解决办法]
jquery的同步,你试试吧。
$.ajax({ type:"POST", url:"Venue.aspx?act=init", dataType:"html", asyn:false, success:function(result){ f1(); f2(); } failure:function (result) { alert('Failed'); }, }