Datatables inline-edit не обновляет строку после редактирования - PullRequest
0 голосов
/ 27 июня 2019

В настоящее время я использую Datatables Editor для управления моими данными. Мне нужно использовать встроенное редактирование, проблема, с которой я сталкиваюсь, заключается в том, что когда я редактирую свою ячейку, эта не обновляется. Более того, после одного редактирования я просто не могу встроить или редактировать другие редактируемые ячейки, но у меня нет предупреждений.

Вот моя таблица HTML:

<table id="content-main">
    <thead>
        <tr>
            <th>Email</th>
            <th>Nom</th>
            <th>Prenom</th>
            <th>E3 Licence</th>
            <th>Eligibilité</th>
            <th>Confirmation</th>
            <th>Commentaire</th>
        </tr>
    </thead>
</table>

Вот мои параметры редактора:

let editor = new $.fn.dataTable.Editor( {
    ajax: function(method, url, data, success, error) {
        $.ajax({
            url: '/eligibility/set/users',
            type: "POST",
            data: data
        })
    },
    table: '#content-main',
    idSrc: 'email',
    fields: [
        {
            label: 'Manuel',
            name: 'ooo_eligibility_manual',
            type: "select",
            options: [
                { label: "True", value: true },
                { label: "False", value: false }
            ]
        },
        {
            label: 'Commentaire',
            name: 'ooo_eligibility_comment'
        }
    ]
});

$('#content-main').on( 'click', 'tbody .editable', function (e) {
    editor.inline( this );
    console.log( this );
} );

Мои таблицы данных init:

$('#content-main').DataTable( {
    ajax: {
        "url": '/eligibility/get/users',
        "type": "GET",
        "dataSrc": function (d) {
            return d
        }
    },
    columns: [
        { data: 'email' },
        { data: 'nom' },
        { data: 'prenom' },
        { data: 'has_E3_licence' },
        { data: 'ooo_eligibility' },
        {
            data: 'ooo_eligibility_manual',
            className: 'editable'
        },
        {
            data: 'ooo_eligibility_comment',
            className: 'editable'
        }
    ]
} );

Вот что отправлено мне на спину: Request sent

А вот что я получаю от своей спины (я изменил значение mail и DT_RowId, чтобы сохранить анонимность пользователя, но это значение совпадает со значением, отправленным в запросе):

{  
   "data":[  
      {  
         "ooo_eligibility_comment":"test2",
         "email":"aabdallah@xxx.xxx",
         "ooo_eligibility":true,
         "DT_RowId":"aabdallah@xxx.xxx",
         "prenom":"xxx",
         "has_E3_licence":true,
         "nom":"xxx",
         "ooo_eligibility_manual":true
      }
   ]
}

Вы понимаете, что я делаю неправильно? Я проверил много тем, но я не могу найти то, что в моем случае не работает. Единственное, что я сравнил с документом - это порядок ответов JSON. В своем doc они извлекают DT_RowId в качестве первой позиции в «данных», но я думаю, независимо от порядка.

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