2016-05-24 7 views
1

i in .when $ keine Antwort nach Aufruf Ajax-Methode hat:keine Antwort von Ajax in, wenn Methode

$.when(tht.ajax.getUserDrp()).done(function (data) { 
    if(data) console.log('hava data') 
    else console.log('no data') 
}); 

getUserDrp Funktion:

getUserDrp: function(){ 
    $.ajax({ 
    url: "../account/getLevel" , 
    type: "POST", 
    contentType: "application/json; charset=utf-8", 
    success: function (data) { 
     // do somthing 
    } 
    }); 
} 

als Ergebnis druckt immer 'Keine Daten' in Konsole, warum?

+0

was ist der Datenwert in Ihrer Erfolgsfunktion? –

Antwort

2

Sie versuchen getUserDrp als ein Versprechen Sie nutzen könnten zu verwenden, aber Geben Sie das $.ajax Funktionsergebnis nicht zurück, deshalb wird .done() nie aufgerufen.

Versuchen:

getUserDrp: function(){ 
    return $.ajax({ 
    url: "../account/getLevel" , 
    type: "POST", 
    contentType: "application/json; charset=utf-8" 
    }); 
} 
+0

yessss tnx viel! gelöst !! Ich habe das vergessen .... tnx alot dude! – Mampel

0

zu verwenden, wenn, getan, müssen Sie Ihre Funktion ändern

getUserDrp: function(){ 
    return $.ajax({ 
    url: "../account/getLevel" , 
    type: "POST", 
    contentType: "application/json; charset=utf-8" 
    }); 
} 

folgt Sie auch einen Rückruf statt

getUserDrp: function(callback){ 
    $.ajax({ 
    url: "../account/getLevel" , 
    type: "POST", 
    contentType: "application/json; charset=utf-8", 
    success: function (data) { 
     callback(data) 
    } 
    }); 
} 

getUserDrp(function(data){ 
if(data) console.log('hava data') 
    else console.log('no data') 
}) 
+0

Tnx für Ihre Antwort, aber ich muss wissen, warum mein Code nicht richtig funktioniert! – Mampel

+0

Überprüfen Sie, ob das für Sie funktioniert – ykay

+0

Das ist nicht wirklich nett von Ihnen Kopieren jemandes Antworten auf die Frage, nur um Ihre Punkte erhöht, Alter. – GiamPy