Сортировать только один столбец с JQuery и TableSorter - PullRequest
6 голосов
/ 21 октября 2011

В данный момент я использую jquery tablesorter и tableorter filter.Моя проблема в том, что я хочу, чтобы мой фильтр фильтровал только один столбец.Теперь его фильтруют все столбцы.Вы можете видеть мой сайт здесь: http://tinyurl.com/3j38vye

Теперь он фильтрует все столбцы, и я хотел бы отфильтровать только столбец "Lainasumma".Не могли бы вы также сказать, почему неправильно сортируется количество?

Ответы [ 3 ]

8 голосов
/ 21 октября 2011

Вы смотрели документацию ? Вот пример того, как вы бы отключили некоторые столбцы, которые используют TableSorter. Вы можете передать объект headers, в котором вы можете указать, какие столбцы отключены.

Альтернативный метод - добавить class="{sorter: false}" в ячейки, в которых вы хотите отключить сортировку.

Редактировать

Вы можете использовать метод $.tablesorter.addParser() для определения пользовательской сортировки (см. Пример jsFiddle выше).

код

$(document).ready(function() {
    $.tablesorter.addParser({
        id: 'custom_sort_function',
        is: function(s) {
            return false;
        },
        format: function(s) {
            // the € symbol causes the tablesorter to treat the value as a string
            // remove it and let the tablesorter treat it as numeric
            // use /\u20AC/ instead of /€/ if regex does not work as expected
            return s.replace(/€/, '');
        },
        type: 'numeric'
    });
    $("#pikavipit").tablesorter({
        headers: {
            0: {
                sorter: false
            },
            1: {
                sorter: false
            },
            2: {
                sorter: 'custom_sort_function'
            },
            3: {
                sorter: false
            },
            4: {
                sorter: false
            },
            5: {
                sorter: false
            },
            6: {
                sorter: false
            },
            7: {
                sorter: false
            },
            8: {
                sorter: false
            }
        }
    });
});
6 голосов
/ 10 июня 2013

Самое простое решение для этого - изменить selectorHeaders в файле javascript и установить для него что-то другое, например:

 selectorHeaders: 'thead th.sortable'

Теперь единственное, что вам нужно сделать, это дать только те столбцы, которые вы хотите сортировать, классом css.

0 голосов
/ 21 октября 2011

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

...