渲染列时我需要访问另一列,以便我可以进行一些计算,但是我看不到如何使用jquery datatable插件执行此操作。我认为这很容易,但我不知道该方法。
function InitAbastecimentosDataTable() {
table = $('#tblAbastecimentos').DataTable({
language: {
url: '//cdn.datatables.net/plug-ins/1.10.19/i18n/Portuguese.json',
},
scrollY: "50vh",
scrollCollapse: true,
async: true,
oLanguage: {
sLoadingRecords: '<img src="/Images/ajax/loader.svg" />'
},
ajax: {
url: '/Abastecimentos/GetAbastecimentos',
dataSrc: ''
},
columns: [
{ data: 'Referencia' },
{ data: 'UAP' },
{ data: 'W01' },
{ data: 'W02' },
{ data: 'ConsumoDiarioW01' },
{ data: 'ConsumoDiarioW02' },
{
data: 'Stock',
render: function (data, type, row) {
if (data > 0) {
return '<span class="badge badge-success">' + data + '</span>';
} else {
return '<span class="badge badge-danger">' + data + '</span>';
}
},
},
{ data: 'ConsumoPABW01' },
{ data: 'StockMinW01' },
{ data: 'StockMaxW01' },
{ data: 'QtdAbastecimentoW01' }
],
dom: 'Bfrtip',
lengthMenu: [
[10, 25, 50, 100, -1],
['10 rows', '25 rows', '50 rows', '100 rows', 'Show all']
],
buttons: [
'pageLength',
{
extend: 'copyHtml5',
exportOptions: { orthogonal: 'export' }
},
{
extend: 'excelHtml5',
exportOptions: { orthogonal: 'export' }
},
{
extend: 'pdfHtml5',
exportOptions: { orthogonal: 'export' }
},
{
text: '<div id=""<i class="fas fa-sync"></i>',
action: function (e, dt, node, config) {
dt.destroy();
InitAbastecimentosDataTable();
}
}
],
initComplete: function () {
this.api().columns([1]).every(function () {
var column = this;
var select = $('<select><option value=""></option></select>')
.appendTo($(column.footer()).empty())
.on('change', function () {
var val = $.fn.dataTable.util.escapeRegex(
$(this).val()
);
column
.search(val ? '^' + val + '$' : '', true, false)
.draw();
});
column.data().unique().sort().each(function (d, j) {
select.append('<option value="' + d + '">' + d + '</option>')
});
});
}
});
我想基于数据字段“ StockMinW01”和“ StockMaxW02”对它进行计算。我对此一无所获
我也尝试使用row [8],但是它给我未定义的内容。
我尝试了console.log(row),它给出了该行的所有数据。我不知道如何访问特定列
答案 0 :(得分:1)
我们可以按其名称访问列。
row['StockMinW01']