yintar
14.12.2018, 22:05
Здравствуйте.
Никак не могу понять такой момент.
var a;
const myButton = document.querySelector('#myButton');
const content = document.querySelector('#content');
myButton.addEventListener('click', function () {
const xhr = new XMLHttpRequest();
xhr.open('GET', 'http://testhtml/some.php');
xhr.send();
xhr.addEventListener('load', function () {
a = xhr.responseText;
console.log(a);
return a;
});
});
console.log(a);
В этом коде вроде все просто.Делаю аякс запрос ,получаю данные и результат записываю в переменную a которая объявлена перед аякс запросом. Затем я хочу использовать эту переменную a, с записанным в нее значением полученным в результате аякс запроса ,но уже использовать эту переменную после аякс запроса, но здесь console.log(a); я получаю undefined.......
Я конечно понимаю, что запрос асинхронный и сначала выполняется весь основной код, или я не так понимаю???????????
И как все-таки, если это возможно , записать результат аякс ответа в переменную и потом использовать эту переменную, например передать в функцию.
Объясните, это ,пожалуйста, можно на примере моего кода.
Всем спасибо.
Никак не могу понять такой момент.
var a;
const myButton = document.querySelector('#myButton');
const content = document.querySelector('#content');
myButton.addEventListener('click', function () {
const xhr = new XMLHttpRequest();
xhr.open('GET', 'http://testhtml/some.php');
xhr.send();
xhr.addEventListener('load', function () {
a = xhr.responseText;
console.log(a);
return a;
});
});
console.log(a);
В этом коде вроде все просто.Делаю аякс запрос ,получаю данные и результат записываю в переменную a которая объявлена перед аякс запросом. Затем я хочу использовать эту переменную a, с записанным в нее значением полученным в результате аякс запроса ,но уже использовать эту переменную после аякс запроса, но здесь console.log(a); я получаю undefined.......
Я конечно понимаю, что запрос асинхронный и сначала выполняется весь основной код, или я не так понимаю???????????
И как все-таки, если это возможно , записать результат аякс ответа в переменную и потом использовать эту переменную, например передать в функцию.
Объясните, это ,пожалуйста, можно на примере моего кода.
Всем спасибо.