Показать сообщение отдельно
  #2 (permalink)  
Старый 21.09.2017, 19:15
Профессор
Отправить личное сообщение для Rasy Посмотреть профиль Найти все сообщения от Rasy
 
Регистрация: 17.06.2016
Сообщений: 509

Можно сделать запрос синхронным, что на моей практике никогда не использовалось. Страница зависает, дожидаясь ответа сервера.
function ajaxLoadElements(obj) {
  var response = $.ajax({
    dataType: 'json',
    url: 'ajax.php?action=ajaxLoadElements',
    async: false
  }).responseText;

  if (!response)
    return false;
  return true;
}


Сообщение от enselerizer
А как сделать правильно?
Через асинхронную природу js с использованием коллбэка, чтобы получить значение из функции.
function ajaxLoadElements(obj, callback) {
  $.ajax({
    dataType: 'json',
    url: 'ajax.php?action=ajaxLoadElements',
    success: function(JSONdata){
      if(JSONdata.fail) {
        openModal(JSONdata.type, JSONdata.msg); 
        callback(false);
        return;
      }
      callback(true);
    }
  });
}
ajaxLoadElements({}, function(response) {
  if (response) alert();
});
Ответить с цитированием