AJAX является асинхронным.Это означает, что код в обработчике успеха задерживается до тех пор, пока запрос не будет успешным, а остальная часть кода продолжает работать как обычно.Вам нужно поместить соответствующий код в обработчик успеха AJAX:
getAjax();
function getAjax() {
$.ajax({
type: "GET",
url: 'someURL',
success: function(response) {
$(document.body).append('<div>'+response+'</div>');
});
}
Обратите внимание, что я также оптимизировал ваш селектор body
, используя собственный Javascript document.body
вместо стандартного селектора тегов.
Редактировать Версия обратного вызова
function getAjax(callback) {
$.ajax({
type: 'GET',
url: 'someURL',
success: callback
});
}
Теперь вы можете сделать код встроенным с помощью функции обратного вызова:
getAjax(function(response) {
$(document.body).append('<div>'+response+'</div>');
});
или
getAjax(function(response) {
alert(response);
});
или что-то еще.
Код внутри анонимного вызова функции будет обработан после завершения запроса AJAX.