JQuery сохранить значение для для l oop? - PullRequest
3 голосов
/ 13 января 2020

У меня была сетка, и я хочу получить все значения в объект. Но, похоже, только вернуть последнее значение, и я понятия не имел, как это исправить.

function item_details(){
  var gridDataArray = $('#itemGrid').data('kendoGrid').dataSource.data();
  for ( var i=0; i < gridDataArray.length; i++ ) {  
    var items = {
      ["itemID_" + i]: gridDataArray[i]['itemID'],
      ["itemQty_" + i]: gridDataArray[i]['itemQuantity'],
      ["itemPrice_" + i]: gridDataArray[i]['itemPrice']
    };
  };

  console.log(items);
  return items;
}

Ответы [ 2 ]

5 голосов
/ 13 января 2020

нам нужно объявить массив раньше для l oop и pu sh объектов в нем для хранения всех объектов.

function item_details(){
      var gridDataArray = $('#itemGrid').data('kendoGrid').dataSource.data();
    var items =[];
      for ( var i=0; i < gridDataArray.length; i++ ) {  
         items.push( {
          ["itemID_" + i]: gridDataArray[i]['itemID'],
          ["itemQty_" + i]: gridDataArray[i]['itemQuantity'],
          ["itemPrice_" + i]: gridDataArray[i]['itemPrice']
        })
      }

      console.log(items);
      return items;
    }
2 голосов
/ 13 января 2020

На вопрос, на который уже дан ответ, можно дополнительно предложить сделать item_details функцию немного короче.

function item_details(){
  return $('#itemGrid').data('kendoGrid').dataSource.data().map((item, i) => new Object({
      ["itemID_" + i]: item['itemID'],
      ["itemQty_" + i]: item['itemQuantity'],
      ["itemPrice_" + i]: item['itemPrice']
    }));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...