Ответы пользователя по тегу AJAX
  • Получение всех полученных данных data ajax?

    @StockholmSyndrome
    Object.values(data);
    Ответ написан
    Комментировать
  • Как передать параметр из вложенной функции?

    @StockholmSyndrome
    почитайте про асинхронность в JavaScript
    на момент, когда запрос выполнится, и вызовется success, return flag; уже давно отработает

    можно передавать callback в функцию
    function query(data, mid, elem, callback) {
      $.ajax({
        /* ... */
        success: function (server_response) {
          /* ... */
          if (data.status) {
            status(true, data.msg)
            callback(true);
          } else {
            status(false, data.msg)
            callback(false);
          }
    
        },
        error: function (err, texterr) {
          status(false, 'error_ajax' + texterr)
        }
      });
    }
    
    
    query(data, mid, elem, (flag) => {
      console.log(flag);
    });

    можно промисом
    function query(data, mid, elem) {
      const executor = (resolve, reject) => {
        $.ajax({
          /* ... */
          success: function (server_response) {
            /* ... */
            if (data.status) {
              status(true, data.msg)
              resolve(true);
            } else {
              status(false, data.msg)
              resolve(false);
            }
      
          },
          error: function (err, texterr) {
            status(false, 'error_ajax' + texterr)
            reject();
          }
        }); 
      };
      
      return new Promise(executor);
    }
    
    
    query(data, mid, elem).then((flag) => {
      console.log(flag);
    });


    если хочется асинхронный код писать синхронно, то можно воспользоваться промисами и async/await
    (async () => {
      const flag = await query(data, mid, elem); 
      console.log(flag);
    })();
    Ответ написан
    1 комментарий