Вопрос

Я использую tablesorter плагин jquery в сочетании с этим замечательным фильтр сортировщика таблиц .

У меня есть поле выбора на моей странице, которое содержит список всех столбцов моей таблицы. Я хочу иметь возможность ограничить фильтр только выбранным столбцом, когда пользователь выбирает его.

Пока что я прикрепил событие к блоку выбора следующим образом:

$('#SelectedColumn').bind("change", columnSelected);

С таким обработчиком:

function columnSelected() {
  var selected = $(this).val();
  $.tablesorterFilter.defaults.filterColumns = [selected];
}

Это правильно устанавливает значение по умолчанию для столбца фильтра, но когда фильтр срабатывает, он фактически не использует это значение. Оказывается, плагин позволяет устанавливать отфильтрованные столбцы только на конструкцию. Или мой новичок в jquery не может понять, как получить данные, которые мне нужно перевернуть.

Это было полезно?

Решение

это дало мне то, что я хотел, грубой силой. Все еще ищу лучшее решение.

function columnSelected() {
  var selected = $(this).val();
  $('#GoToTextBox').val('').focus();
  if (selected == 'Any') {
    $table.get(0).config.filter[0].filterColumns = null;
  } else {
    $table.get(0).config.filter[0].filterColumns = [selected];
  }
}

Другие советы

Я работаю с шириной jFilter. Выберите фильтры для Tablesorter:

http://www.jordigirones.com/131-filtros -desplegables-кон-tablesorter.html

У меня была такая же проблема. При изменении события в окне выбора просто перезагрузите страницу, и ваша проблема будет решена.

<select name="search" id="search" onchange="refreshPage()" >

function refreshPage(){
        location.reload();
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top