在项目中经常遇到,alert一下后面的方法才能够继续执行,这就是异步调用导致的。我们通常需要同步来调用这些方法,特别是同时调用多个方法的时候,这多个方法默认的可能就是异步调用。通常在使用jQuery和dwr的时候遇到这种问题,所以只要给jQuery或者dwr设置一下同步调用就可以了:
jQuery的ajax方法设置同步:
var html = $.ajax({ url: "some.php", async: false }).responseText;
?async设置为false就可以。
dwr设置同步:
dwr.engine.setAsync(false);
?当然,在需要同步的方法执行完之后最好给dwr还原回默认的异步
dwr.engine.setAsync(true);
?