Процесс для цикла внутри AJAX (синхронно) - PullRequest
0 голосов
/ 05 сентября 2018

Как я могу выполнить синхронно в этом сценарии? У меня есть заголовок, и когда я вытащил его, я поместил AJAX внутрь, чтобы вытащить его детали и заполнить поля.

$.ajax({
  url: base_url + "order/get_order/" + id,
  type: "GET",
  dataType: "JSON",
  success: function(data) {
    var trankey = data.TranKey;
    $('[name="transactionkey"]').val(trankey);
    $('[name="qty"]').val(data.OrderQTY);
    loadStorer(1);
    loadSku(1);
    loadPNC(data.TruckerCode, data.PNC);
    $('[name="trucker"]').val(data.TruckerCode);
    $('[name="sku"]').val(data.sku);

    $.getJSON(base_url + "order/get_details/" + trankey, function(data) {
      if (data !== "") {
        fill_data(data);
      }
    });
  },
  async: false,
  error: function(jqXHR, textStatus, errorThrown) {
    alert('Error get data from ajax');
  }
});

function fill_data(data) {
  for (var i = 0; i >= data.length; i++) {
    if (i > 0) {
      add_row();
    }
    $('#store_code' + i).val(data[i]['StoreCode']);
    $('#sku' + i).val(data.data[i]['sku']);
    $('#ret_qty' + i).val(data[i]['ReturnedQty']);
    $('#shipped_qty' + i).val(data[i]['ShippedQty']);
  }
}

1 Ответ

0 голосов
/ 06 сентября 2018

Спасибо всем за комментарии. .. Я просто пропустил цикл, это должно быть я

function fill_data(data) {
  for (var i = 0; i < data.length; i++) {
    if (i > 0) {
      add_row();
    }
    $('#store_code' + (i+1)).val(data[i]['StoreCode']);
    $('#sku' + (i+1)).val(data.data[i]['sku']);
    $('#ret_qty' + (i+1)).val(data[i]['ReturnedQty']);
    $('#shipped_qty' + (i+1)).val(data[i]['ShippedQty']);
  }
}

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...