2012-05-02 64 views
10

我有另一個問題。我在FireFox中遇到錯誤,我不知道我的錯是什麼。我一直這樣做,我從來沒有錯誤。我已經檢查了小寫/大寫錯誤,但是我找不到任何東西。.done不是函數

感謝

$阿賈克斯({類型: 「POST」,網址: 「AJAX/check_username.php」 數據:{用戶名:用戶名}})。做不是一個函數

<script type="text/javascript"> 
$(document).ready(function(){ 
    $("#username").keyup(function(){ 
     var username = $("#username").val(); 
     $(".usernameFeedback").fadeIn("fast"); 

     $.ajax({ 
      type: "POST", 
      url: "ajax/check_username.php", 
      data: { username: username } 
     }).done(function(msg) { 
      $("#loadingImage").hide(); 
      if(msg.status != "error") 
       { 
        if(msg.available == "yes") 
        { 
         $(".usernameFeedback span").text(msg.message); 
         $(".usernameFeedback span").removeClass("notok"); 
         $(".usernameFeedback span").addClass("ok"); 
        } 
        else 
        { 
         $(".usernameFeedback span").text(msg.message); 
         $(".usernameFeedback span").addClass("notok"); 
        } 
       } 
     }); 
     return(false); 
    }) 
}); 
</script> 
+0

什麼是AJAX函數的返回如果沒有延期?嘗試將其記錄到控制檯。 – Bergi

回答

17

可能你的jQuery版本太舊了。您至少需要jQuery 1.5 for jqXHR對象來實現您正在使用的接口的Promise接口。

如果你不能因爲某些原因升級,只需使用success選項:

$.ajax({ 
    type: "POST", 
    url: "ajax/check_username.php", 
    data: { username: username }, 
    success: function(msg) { 

    } 
}); 
+1

謝謝!我使用的是舊版本(1.4.2)。我用(1.7.2)代替了它。我再也沒有錯誤,但我仍然有一個編碼錯誤。應用程序必須檢查用戶名是否可用(運行時),但輸出始終不可用,但我會查找我的錯。謝謝! – Niels

+0

替代解決方案適用於我。感謝和+1。 –

相關問題