Вы хотите использовать пользовательские фильтры, я думаю. http://datatables.net/release-datatables/examples/plug-ins/range_filtering.html
Смотрите эту jsfiddle: http://jsfiddle.net/DYyLd/
для поиска «х» и только строки с «х» выбран покажет. Измените выбранную опцию, и поиск найдет ее/опустит по мере необходимости.
$.fn.dataTableExt.afnFiltering.push(
function(oSettings, aData, iDataIndex) {
var oTable = $('#myTable').dataTable();
var nodes = $(oTable.fnGetNodes(iDataIndex));
var selItem = nodes.find('select').val();
// This is basic. You should split the string and look
// for each individual substring
var filterValue = $('div.dataTables_filter input').val();
return (selItem.indexOf(filterValue) !== -1);
}
);
Кроме того, я добавил следующее:
$('select').click(function() { $('#myTable').dataTable().fnDraw(); });
, который перерисовывает таблицу, когда какой-либо из выбирает изменяются - тот путь, они повторно фильтруют.
Как прокомментировано в примере, моя функция поиска очень проста, но только для того, чтобы увидеть, содержит ли выбранный элемент в поле выбора точный текст в поле поиска, чувствительный к регистру. Вы почти наверняка захотите разбить строку пробелами и искать каждую подстроку в selItem. Также обратите внимание, что этот метод не ищет другие столбцы (столбцы) - он выглядит только в столбце с полем выбора. Вы можете также искать другие столбцы.
В моей таблице содержится столбец с полем выбора для каждой строки, и пользователь может выбрать опцию в каждой строке. Чем мне нужно отфильтровать таблицу по выбранному значению – AleCat83