W miarę rozwoju mojej struktury postanowiłem podzielić ją na pliki, zamiast pozostawić ją w głównym pliku projektu. Jednak zwracanie funkcji nie zwraca żadnej wartości.Zmienna nie jest zwracana z funkcji AJAX
dane nie są puste - jeśli powiadomię wartości w pliku js, są tam!
Funkcje:
1-te funkcja w pliku .js (jest wliczony przed realizacją)
var lock_get = 0;
function get_data(data, destination)
{
if (lock_get == 0)
{
lock_get = 1;
$.ajax({
type: "POST",
url: destination,
async: true,
data: data,
success: function(data)
{
lock_get = 0;
if (data)
{
return data;
}
}
});
}
};
Więc i tutaj jest częścią wykonanie:
var test = get_data(data, destination);
notice(test);
i test jest puste ... Próbowałem już różnych sposobów pisania, ale chyba nie rozumiałem możliwości js?
Wykonaj asynchroniczny: false. – Tuscan
@ Tuscan No. [async: false jest przestarzałe i zawsze był złym pomysłem] (http://api.jquery.com/jQuery.ajax/) –
możliwy duplikat [Jak zwrócić odpowiedź z połączenia Ajax?] (http://stackoverflow.com/questions/14220321/how-to-return--response-from-an-ajax-call) –