提问人:Maxim 提问时间:11/2/2023 最后编辑:Maxim 更新时间:11/3/2023 访问量:117
不要在数据表中重新绘制表
Don't redraw the table in Datatables
问:
我尝试为我的表制作过滤器,但是当我想只绘制过滤后的数据时,它什么也做不了。 我使用数据表。使用 ServerSide。当我尝试过滤时,它什么都没有。在控制台中很好,但没有任何效果
function applyFilters() {
var selectedFilters = {};
$('.column-filter:checked').each(function () {
var columnIndex = $(this).data('column-index');
var filterValue = $(this).data('value');
if (!selectedFilters[columnIndex]) {
selectedFilters[columnIndex] = [];
}
selectedFilters[columnIndex].push(filterValue);
});
for (var columnIndex in selectedFilters) {
if (selectedFilters.hasOwnProperty(columnIndex)) {
var filterValues = selectedFilters[columnIndex];
var filterString = filterValues.join('|');
console.log(filterValues);
console.log(filterString);
console.log(table.columns(columnIndex).search(filterString));
table.columns(columnIndex).search(filterString);
}
}
table.draw();
}
$filterParams = isset($_POST['filterParams']) ? json_decode($_POST['filterParams'], true) : [];
if (!empty($filterParams)) {
foreach ($filterParams as $column => $filterValues) {
if (!empty($filterValues) && in_array($column, $columns)) {
$filterValues = array_map([$conn, 'real_escape_string'], $filterValues);
$filterValues = "'" . implode("', '", $filterValues) . "'";
$sql .= " AND $column IN ($filterValues)";
}
}
}
它不起作用
答: 暂无答案
上一个:JQuery 数据表宽度
评论