2012-05-02 22 views
10

Ho un altro problema. Ottengo un errore in FireFox e non so quale sia la mia colpa. L'ho sempre fatto così e non ho mai avuto un errore. Ho già controllato gli errori in lettere maiuscole/minuscole ma non riesco a trovare nulla..done non è una funzione

Grazie

$ .ajax ({type: "POST", url: "Ajax/check_username.php", i dati di: {username: username}}). Fatto non è una funzione

<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

Cosa significa il ritorno della funzione ajax se non una differita? Prova a collegarlo alla console. – Bergi

risposta

17

Probabilmente la versione di jQuery è troppo vecchia. È necessario almeno jQuery 1.5 per oggetti jqXHR per implementare l'interfaccia Promessa che si sta utilizzando.

Se non è possibile eseguire l'aggiornamento, per qualche motivo, è sufficiente utilizzare l'opzione success:

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

    } 
}); 
+1

Grazie !! Stavo usando una vecchia versione (1.4.2). L'ho sostituito con (1.7.2). Non ho più errori ma ho ancora un errore di programmazione. L'applicazione deve verificare se un nome utente è disponibile (in fase di esecuzione) ma l'output non è sempre disponibile, ma cercherò il mio errore. Grazie! – Niels

+0

La soluzione alternativa ha funzionato per me. Grazie e +1. –

Problemi correlati