diff --git a/src/Datatable/Datatable.php b/src/Datatable/Datatable.php index 01f296e..d0c619f 100644 --- a/src/Datatable/Datatable.php +++ b/src/Datatable/Datatable.php @@ -135,7 +135,7 @@ class Datatable if (columnsSearch[colIdx].type !== undefined) { switch (columnsSearch[colIdx].type) { case 'multiple': - cell.html(''); + cell.html(''); columnsSearch[colIdx].data.forEach(function (data) { $( 'select', @@ -158,7 +158,7 @@ class Datatable break; case 'select' : - cell.html(''); + cell.html(''); columnsSearch[colIdx].data.forEach(function (data) { $( 'select', @@ -178,7 +178,7 @@ class Datatable case 'date': title = cell.data('header') ?? ''; - cell.html('
') + cell.html('
') $('#:tagId').find('#from'+colIdx) .datepicker() .on('change', function () { @@ -214,7 +214,7 @@ class Datatable case 'input': default: title = cell.data('header') ?? ''; - cell.html(''); + cell.html(''); $( 'input', $('#:tagId .filters th').eq($(api.column(colIdx).header()).index()) @@ -359,7 +359,7 @@ class Datatable async function saveFilters(api) { let filters = {}; $('#:tagId .filters input, #:tagId .filters select').each(function (index, item) { - filters[index] = $(item).val(); + filters[parseInt($(item).data('col-id'))] = $(item).val(); }); let order = api.order(); @@ -373,8 +373,9 @@ class Datatable if (data == null) { return; } $('#:tagId .filters input, #:tagId .filters select').each(function (index, item) { - $(item).val(data.filters[index] ?? null); - api.columns(index).search(data.filters[index] ?? '') + let colId = parseInt($(item).data('col-id')); + $(item).val(data.filters[colId] ?? null); + api.columns(colId).search(data.filters[colId] ?? ''); }); api.order(data.order);