Программно сбросить фильтр в jquery tablesorter
Я использую jquery tableorter от Mottie с виджетом фильтра. Все работает фантастически, кроме одной вещи, которую я не могу понять. У меня есть таблица, показывающая в модальном. Когда вы вводите текст в поле фильтра, затем закрываете модальное окно и снова открываете его, текстовый фильтр по-прежнему применяется. Я хочу, чтобы этот фильтр очищался / сбрасывался при повторном открытии модального окна. Я не смог найти код для сброса фильтра на сайте TableSorter. Я могу добавить кнопку, которая делает это, но я не могу понять конкретный код, который выполняет сброс.
3 ответа
Если вам нужно повторно инициализировать TableSorter (поскольку создается новая таблица), когда модальное окно открывается, вы можете установить filter_saveFilters
возможность false
, Предыдущий запрос не будет сохранен в локальном хранилище и не будет применен к таблице.
Если вам нужно всего лишь "applyWidgets", чтобы заставить TableSorter работать в модальном режиме (TableSorter не переинициализируется каждый раз), тогда вам нужно очистить фильтры с помощью setFilters
метод следующим образом:
$.tablesorter.setFilters( $('table'), [] );
Разве вы не можете просто повторно вызвать TableSorter, когда страница снова открывается?
$("#myTable").tablesorter( {sortList: [[0,0], [1,0]]} );
Единственный способ заставить это работать для меня - заставить поля фильтра стать пустыми перед повторной загрузкой сортировщика таблиц. Использовал:
$(".tablesorter-filter").val('');
$table.tablesorter({ ...options... });