В настоящее время мы работаем над сетевым CRM. Проект идет отлично, за исключением разочаровывающей проблемы.
мы используем плагин DataTable jQuery для почти всех отсортированных таблиц в приложении. Вот список активных инцидентов.
Как вы можете видеть, третий столбец представляет тип инцидентов (билет, запрос на изменение, запрос на обслуживание и т.д.).
Пользователи запросили фильтр, помещенный поверх предыдущей таблицы, для фильтрации типов инцидентов. Например, если вы выберете "Только билет", каждый другой тип будет скрыт. До сих пор все работает.
Чтобы сделать это, каждая строка имеет класс CSS, который представляет тип инцидента.
- Строка № 1: class= "билет"
- Строка # 2: class= "changeRequest"
При изменении значения поля фильтра выполняется следующий код javascript
$('table.sortable').each(function() {
for (var i = 0; i < rows.length; i++) {
if ($(rows[i]).hasClass(vClass)) $(rows[i]).hide();
}
});
где
- vclass= класс CSS, представляющий тип инцидента
- rows = Все строки данныхTable, полученные из "$ (SomeDatatable).dataTable(). fnGetNodes();"
- $('table.sortable') = Все таблицы данных
Теперь закрепите ремни безопасности (французский лайнер). Когда вы скрытно скрываете строку, dataTable все еще учитывает ее. Вот сказочный результат.
В этом объясняется главный вопрос: Как я должен сообщить dataTable, что я хочу скрыть строки, не удаляя их навсегда? В DataTable уже есть поле фильтра, но мне нужно, чтобы он работал независимо, а также поле фильтра типа (не на изображении).
Есть ли способ добавить второй фильтр, возможно?