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