У меня есть jQuery Datatable, как показано ниже
let purchasedProductTbl = $('#grdPurchasedProduct').DataTable({
filter: false,
paging: false,
lengthChange: false,
searching: false,
ordering: false,
autoWidth: false,
language: {
paginate: {
next: '→', // or '→'
previous: '←' // or '←'
},
emptyTable: "No data available.."
},
columnDefs: [
{
"defaultContent": "-",
"targets": "_all"
}
],
columns: [
{
data: "active",
render: function (data, type, row) {
console.log(row)
console.log(data)
console.log(row().index())
if (type === 'display') {
return '<div class="ckbox"><input type="checkbox" style="width:15px"; id=childCheckbox' + row.id + '><label for="childCheckbox' + row.id + '"></label></div>'
}
return data;
},
className: "dt-body-center"
},
{
"render": function (d, t, r) {
let $select = $("<input type='text' class='product-unit' disabled/>", {
"id": r[0] + "start",
"value": d
});
return $select.prop("outerHTML");
}
}
]
});
В этом примере первый столбец - checkbox
.Я использовал label
для стилизации его по-другому, основываясь на моем стиле, когда идентификатор checkbox
совпадает с атрибутом label-for
, тогда он будет работать как checkbox
.Моя проблема в том, что у меня есть много столбцов в этой сетке, все они генерируются динамически, поэтому я не получаю никакого числа unique
для дифференцирования каждого checkboxes
.Можно ли в любом случае дать unique
идентификатор или автоматически сгенерированный идентификатор для столбцов такого типа?
Я попытался получить номер строки, но здесь сама строка выглядит как пустой массив.
Есть ли другой способ получить row number
или некоторые другие unique
числа для каждого метода рендеринга строки?
Любая помощь будет оценена.