leni_m
@leni_m
ЧупаКобрус

Как присвоить переменной ответ сервера через ajax?

Пытался сделать так
function getValue(id) {
    var params = {
        id: id
    };
    $.ajax({
        type: "POST",
        url: "url",
        data: params
    })
        .done(function (data) {
            return data;
        });
}
x = getValue(1);
console.log(x); // выводит undefined

UPD: проблема в том, что функция возвращает ответ сразу, и не ждет ответа от сервера
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Columnistdc
Junior front-end
Может, попробовать:
/***/
let x = null;
/***/
.done(function (data) {
x = data;
});

Поможет?
Ответ написан
didiaFiodor
@didiaFiodor
а вы скажите ему об этом, раскройте ему глаза
Ребята, не забываем ставить вызов Ajax на setInterval и обработчик success на setTimeout
(
hndlr = function handler()
{
 succfun = function succ() {
		succ.flag = "всё хорошо";
		return succ.flag
		}; 
if(!flag)var flag="privet diatel";	
$.ajax({
        'url': "http://blablahost/blabla.blab",
        'success':succfun(), 
	  'type': "GET",  
        'dataType': "json",
        'data': {congr:"Hi User!"}
		})
	
console.log(succfun.flag)
},
setInterval(
hndlr,2000
)
)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы