Ich habe diese Funktion:jQuery Ajax, async: false, Rückkehr undefined
GetMessage: function (code) {
var msg = localStorage.getItem(code);
if (msg == null || msg == 'undefined') {
$.ajax({
type: 'GET',
url: CTHelper.ApiUrl() + '/Api/Case/GetMessage?code=' + code,
async : false,
success: function (result) {
localStorage.setItem(code, result);
return result;
},
error: function (result) {
return '';
}
});
}
else {
return msg;
}
},
Das erste Mal aufgerufen wird, geht es an den Server ($ Schnipsel) und speichert einen Wert in der local , so erhalten die zweiten und so weiter Aufrufe den Wert aus dem Cache/Speicher.
Nun, es funktioniert gut, alle Zeiten, aber der erste Aufruf, scheint es wie Rückergebnis im Erfolg Funktion immer undefiniert zurückgibt.
Ich dachte, die Einstellung der async: false würde das Problem beheben, aber es hat nicht
Unter einem Bild, das mein Problem Funktionen
See this: https: //stackoverflow.com/a/2592780/1623249 –