JQuery Datatable инициализация - PullRequest
0 голосов
/ 17 мая 2019

Я получаю эту ошибку при попытке ввести JSON в мой DataTable:

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

Вот как выглядит мой JSON:

[{
  "a": "asdsaddas",
  "b": "asdasda",
  "c": "0000000001",
  "d": "name"
}]

Когда пользователь нажимает кнопку, я генерирую и показываю таблицу сОбратный вызов AJAX:

$('#find_button').click(function() {
  event.preventDefault();
  if (validateAll()) {
    $("#myTable").DataTable({
      "lengthChange": false,
      "pageLength": 20,
      autoWidth: false,
      serverSide: true,
      processing: true,
      "dataSrc": "",
      "ajax": function(data, callback, settings) {
        var $form = $("#my_form_id");
        var jsonData = getFormData($form, data.start, data.length);
        var request = $.ajax({
          type: "POST",
          url: "api",
          contentType: "application/json; charset=utf-8",
          data: JSON.stringify(jsonData),
          dataType: "json"
        });

        request.then(function(response) {
          console.log(JSON.stringify(response.data));

          callback({
            data: [JSON.stringify(response.data)],
            recordsTotal: response.total,
            recordsFiltered: response.total
          })
        }, failCallback);
      },
      columns: [{
        "data": "a"
      }, {
        "data": "b"
      }, {
        "data": "c"
      }, {
        "data": "d"
      }],
      filter: false,
      info: false,
      ordering: false
    });

    $('#htmlTable').show();
  }
});

Я прочитал много связанных вопросов с той же ошибкой, но все еще не могу заставить ее работать в моем случае.Может быть, проблема в том, что DataTable инициализируется до получения ответа от сервера?

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