У меня есть таблицы данных и фильтры по столбцам в моем скрипте, и он прекрасно работает, но только когда я генерирую таблицу по телу (DOM). Когда я хочу сгенерировать таблицу с помощью ajax (опция на стороне сервера), она не работает. Как я могу использовать серверную часть и фильтры по столбцам? Мне нужен совет, как получить запрос по AJAX из фильтра выбора.
initComplete: function () {
this.api().columns('.select-filter').every( function () {
var column = this;
var name = column.header().innerHTML;
var col = $('<div class=\"filters\"></div>').appendTo( \".filters-group\" );
var select = $('<select class=\'form-control select2\'><option value=\"\">Wszystko</option></select>')
.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) {
var val = $.fn.dataTable.util.escapeRegex(d);
if (column.search() === \"^\" + val + \"$\") {
select.append(
'<option value=\"' + d + '\" selected=\"selected\">' + d + \"</option>\"
);
} else {
select.append('<option value=\"' + d + '\">' + d + \"</option>\");
}
});
var label = $('<label class=\'filters-label\'>'+name+'</label>');
var form = $('<div class=\'form-group\'></div>');
col.append(form);
form.append(label);
form.append(select);
} );
},