2011-05-25 62 views
1

我想弄清楚,什么我做错了在下面的代码:jQuery的AJAX相关的问题

$(function() { 
    $(".alert").live('click', function(){ 
     var id = $(this).closest("tr").attr("id") 
     var info = 'id=' + id; 
     $.ajax({ 
     type: "POST", 
     url: "http://localhost/app/ajax.php?act=alert", 
     data: info, 
     success: function(Response){ 
      } 
     }); 
    alert(Response); 
    $(this).hide(); 
    return false; 
    }); 
}); 

Return false不工作。

HTML代码:

<a href="#" class="alert">Alert</a> 
+0

它是什么应该做,什么不工作?看来该代码是不是在成功回调...它可能是“不工作”,因为'Response'未定义(所以它抛出一个错误。查看控制台。 – 2011-05-25 09:38:04

+0

@Felix克林它不工作正确的,它重定向页面以#,请连查我的HTML代码。 – seoppc 2011-05-25 09:39:14

回答

3

AJAX是通过定义异步

当您的$.ajax调用返回时,HTTP请求仍将得到处理,因此Response尚未填充。

alert(Response)打电话给你success回调里面看到它如何工作。

+0

是现在的工作,谢谢,这样你就可以更clearify,我在做什么错? – seoppc 2011-05-25 09:42:31

+0

你期待'Response'包含一个值的回调曾经被称为前。 – Alnitak 2011-05-25 09:51:20