2009-05-08 1 views
2

Я использую плагин jquery в паре с этим отличным плагином tablesorter filter.jquery tablesorter filter plugin

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

До сих пор я приложил событие в поле выбора, как так:

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

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

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

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

+0

Такая же проблема. Я отчаянно жалею, что был краткий пример, включающий все HTML, JS и ссылки ... это кошмар. –

+0

@ScottBeeson Попробуйте мою [fork of tablesorter] (http://mottie.github.io/tablesorter/docs/). Он имеет [фильтр-виджет] (http://mottie.github.io/tablesorter/docs/example-widget-filter.html), который может сработать для вас ~ проверить опцию 'filter_onlyAvail'. – Mottie

ответ

0

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

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]; 
    } 
} 
0

Я работаю ширина С jFilterSelect фильтры для TableSorter:

http://www.jordigirones.com/131-filtros-desplegables-con-tablesorter.html

+0

Но этот фильтр не работает с несколькими таблицами на странице. Выбор выбирает ненужные данные из внешних столбцов других таблиц. Кто-нибудь знает о переезде? – user168507

0

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

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

function refreshPage(){ 
     location.reload(); 
}