我当前正在使用数据表编辑器来管理我的数据。我需要使用内联编辑,我面临的问题是当我编辑单元格时,该单元格不会刷新。而且,在进行一次编辑后,我无法对任何其他可编辑单元格进行内联编辑,但没有警告。
这是我的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 );
} );
我的数据表初始化:
$('#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'
}
]
} );
这是我从背面收到的信息(我更改了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”作为“数据”中的第一位置,但是我想无论顺序如何。