Jquery append()是否异步运行?

我已经看到一些帖子( append supposedly immediate)有相互抵触的答案。我们使用JQuery 1.4(http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js)并且append()似乎是异步的,这样:

编辑以在AJAX回调的上下文中显示代码

...
 var message = $.ajax({
   type: "GET",url: "/getVolumes/" +  _Id,async: false 
 }).responseText;
 if (parseInt(message) != 0){
   var $results = $(message);
   $MAIN_DIV.append($results);
   retrieveTargets();
 }
...    
function retrieveTargets(){
  var $targets = $(".resultTargets");
}

按预期执行和创建页面,但目标查询在运行时不产生任何内容。在JS控制台中运行相同的代码将按预期方式检索元素。

如果这是JQuery中的预期行为,等待直到append完成是什么正确的方法

解决方法

所有评论都帮助追踪了这一点。我在控制台中跟着一只红鲱鱼。
问题不是同步的,而是下面的一行:
$targets.each( function(){
  ...
  this.html();
  ...

需要的

$(this).html();

总之,每个人都是正确的。Jquery append()行为同步。

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: <span id=&quot...
jQuery 添加水印 <script src="../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...