Как я могу использовать функцию «добавить строки» в мои таблицы данных? - PullRequest
0 голосов
/ 30 декабря 2018

Это мои данные.Работает нормально:

<table class="table table-bordered table-hover table-striped display" width="100%" cellspacing="0">
     <thead>
          <tr>
            {% for key, value in columns %}
               <th>
                  {{ key }}
               </th>
            {% endfor %}
          <th width="100">Aktion</th>
          </tr>
     </thead>
</table> 

скрипт:

 var table = $('.table').DataTable({
    "ajax": {
      "url": "../data/data.json",
      "dataSrc": ""
    },

    "columns": [
      {% for key, value in columns %}
      {   "data": "{{ key }}"},
      {% endfor %}
      { "data": "uniqueId" }
    ]
  });

Я хочу добавить функцию «добавить строки».Поэтому я добавляю этот код:

  var counter = 1;

  $('#addRow').on( 'click', function () {
      table.row.add( [
          counter +'.1',
          counter +'.2',
          counter +'.3',
          counter +'.4'

      ]).draw( false );

      counter++;
  } );

  // Automatically add a first row of data
  $('#addRow').click();

Но когда я загружаю страницу новой, я получаю следующее сообщение об ошибке (я еще не нажимал ни одну кнопку):

Предупреждение DataTables: table id = DataTables_Table_0 - запрошенный неизвестный параметр 'id' для строки 0, столбца 0. Для получения дополнительной информации об этой ошибке см. http://datatables.net/tn/4

https://datatables.net/examples/api/add_row.html

1 Ответ

0 голосов
/ 30 декабря 2018

У меня есть решение:

var counter = 1;

$('#addRow').on( 'click', function () {
   table.row.add({
        {% for key, value in columns %}
        "{{ key }}": counter,
        {% endfor %}
   }).draw();
   counter++;
});
...