Как обработать полученные данные с помощью $.post за пределами ОВ callback-функции?
Хочу вернуть результат в функции, который был обработан callback функцией в запросе $.post(). Но не получается. По всей видимости проблема кроется в области видимости переменной. Подскажите как решить данную проблему?
function request (value) {
var result = false;
$.post('/brand/find', { name: value }, function(data) {
result = data > 0;
});
return result;
}
Юрий Пузыня: Пробовал использовать синхронный запрос к серверу. Но так как вызов функции привязан к событию ввода текста в поле input, получается заторможенная реакция из-за блокировки браузера. Так что этот вариант не подходит
Почитайте вот в эту сторону - habrahabr.ru/post/193598
В комментарии Алексей Тен правильно говорит, что на момент выполнения инструкции return никакие данные еще не вернулись.
Поэкспериментировал с объектом Deferred. Не понимаю одной вещи, как он может помочь мне после завершения ajax запроса вернуть переменную result в функции request, если запрос все равно происходит в асинхронном режиме.