Обновление Kendo Ui trasport получить данные из события сохранения? - PullRequest
0 голосов
/ 14 января 2020

Обратитесь к изображению ниже, я создаю всплывающий шаблон вместе с 2 таблицами внутри. Поэтому, когда я нажимаю кнопку «Отправить», все записи будут выделены красным и желтым полем. Пока он только выбирает записи только красным.

При срабатывании кнопки отправки будет вызвано событие save и также будет прочитано transport > update. поэтому в моем save событии я создаю код, который будет извлекать все записи внутри желтой сетки. Теперь меня интересует, как объединить запись, которую я получаю в событии save, вместе с записью в transport > update?

enter image description here

kendo dataSource transport > update

update: {
  url:  "./getRecipe.php",
  type: "POST",
  data :function() {
          return { 
            method: "editRecipe",
            this_propertyID : $('#thisPropertyID').val(),
            // get together with all items value.
          }
  },                         
},

на save событие

function onSave(e){
  console.log('submit button trigger');

    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);
    //I need to store this object and when submit submit button trigger it  will call from transport update.

}

Обновление

Я пытаюсь вставить код в save событие в transport > update и объединить object

  update: {
  url:  "./getRecipe.php",
  type: "POST",
  data :function() {

    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);

    var data = { 
      method: "editRecipe",
      this_propertyID : $('#thisPropertyID').val(),
    };

    var x = {... data, ... items};
    return x;
  },                         
},

Но вывод, как это? Как убрать те 0[itemID_0]: LA1, чтобы они стали только itemID_0: LA1?

enter image description here

...