gordon_shamway
@gordon_shamway

Как правильно возвратить ответ аякс запроса?

Как правильно возвратить ответ аякс запроса?
Пробую так но получаю undefined
function loadDoc() {
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            
            var res = JSON.parse(this.responseText);
       		return res;
       }
      
    };
    xhttp.open("POST", "Rest.php", true);
    xhttp.send();
    return xhttp.onreadystatechange(); 
}

console.log(loadDoc()); // undefined
  • Вопрос задан
  • 239 просмотров
Решения вопроса 1
KorniloFF
@KorniloFF Куратор тега JavaScript
Работаю по font-end / JS
Функция срабатывает раньше ответа сервера.
function loadDoc() {
	function success() {
		console.log(JSON.parse(xhttp.responseText));
	}
    var xhttp = new XMLHttpRequest();
    xhttp.open("POST", "Rest.php", true);
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
        	return success();
       }

    };
    
    xhttp.send();
}
loadDoc();
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Можно посмотреть здесь и поставить мне звёздочку))
includeHTML - Include HTML DOM nodes/parts (loading) via HTML tag into HTML-page for templates and SPA (pure js)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы