JQuery get / ajax调用执行回调而不等待响应

时间:2010-05-11 23:06:17

标签: jquery

我的JQuery Ajax调用存在问题。响应始终为null,因为在对get_friends的请求完成之前执行了回调函数。有什么我想念的吗?提前谢谢。

jQuery(document).ready(function($) {
   $('#btn_update').click(function() {

       url = '/get_friends/';
       $.get(url, {}, function(response){
            alert(response);
       });
   });
});

3 个答案:

答案 0 :(得分:1)

我的同事能够帮助我。我不得不添加“return false;”在点击功能结束时。

答案 1 :(得分:0)

我没有看到任何可以解释这种行为的东西。实际上,我复制并粘贴了该代码,只是更改了URL,并得到了预期的结果(它在显示调用响应之前等待调用完成)。所以不,你没有错过该代码中的任何,问题必须在其他地方。

OT(也许):您是否在包含此代码的范围内将url声明为变量?因为否则,你正在创建一个implicit global variable,这是一件坏事(tm)。 :-)但这并不能解释你所描述的行为。

答案 2 :(得分:0)

可以指定$ .get的最后一个参数。它可以是$ .ajax的dataType值。尝试“文本”,看看你真正从服务器收到什么。然后您可以更改为您真正需要的类型(请参阅http://api.jquery.com/jQuery.ajax/