日期:2014-05-16  浏览次数:20359 次

js异步调用问题

在项目中经常遇到,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);

?