Я немного запутался в работе с таблицами данных. Я создал упрощенный пример с массивом объектов (каждая строка, содержащая одну временную метку) в качестве источника данных и создал из него 4 столбца данных:
$('#myTable').DataTable({
"columns": [{
"title": "Date",
"data": "createTime",
"orderData": 1,
"render": function(data,type,row,meta){return moment.unix(data).format(moment.localeData().longDateFormat('LL'));}
},
{
"title": "0_hidden_createTime",
"data": "createTime",
"visible": false,
"searchable": false
},
{
"title": "Button Column",
"className": "dt-right",
"render": function(data,type,row,meta){return '<button onclick="doIt($(this).closest(\'tr\'));return false;">Press Me</button>';}
},
{
"title": "hidden_id",
"visible": false,
"render": function(data,type,row,meta){return new Date().getTime();}
}],
data: [
{
"createTime": 1570032790
},
{
"createTime": 1572711189
},
{
"createTime": 1575303183
},
{
"createTime": 1577981593
},
{
"createTime": 1580660000
},
{
"createTime": 1583165589
},
{
"createTime": 1585843981
}
]
});
Лог c за 4 столбцами:
- Дата: дата в формате даты из отметки времени источника данных, упорядоченная по скрытому столбцу
- 0_hidden_createTime: столбец orderby для столбца «Дата»
- Колонка кнопки: кнопка для выполнить действие для каждой строки
- hidden_id: столбец, который содержит уникальный идентификатор (здесь упрощен временной меткой), который я буду использовать позже
Теперь, после нажатия на кнопку I хотел бы получить эти скрытые значения, чтобы сделать что-то с этим. Но, кажется, очень трудно получить эти ценности. Я уже видел, что это, возможно, находится внутри объекта "context":
function doIt(row){
$('#myTable').DataTable().rows(row).data().context[0]
}
Но я не могу найти никаких полезных документов о том, как извлечь скрытые значения. Можете ли вы открыть этот черный ящик для меня? Я ожидал бы простой вызов, такой как .rows().data()
, для всех значений, фактически находящихся в видимой таблице (например, получение вышеуказанных 4 строк и значений)
Оцените его.