JQuery tableorter пользовательский парсер для всех заголовков? - PullRequest
2 голосов
/ 26 января 2012

В настоящее время я работаю с таблицей таблиц сортировки, в которой мне нужно использовать собственный анализатор для каждого заголовка. Я хотел бы знать, есть ли простой способ сделать это, например:

table.tablesorter({ 
        headers: { 
            0-20: { 
                sorter:'CareerLast' 
            }, 

        } 
    }); 

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

Ответы [ 2 ]

4 голосов
/ 27 января 2012

Ну, я думаю, у вас есть три варианта:

  1. Определите каждый заголовок, от 0 до 20 в параметрах инициализации.

    header : {
        0 : { sorter : 'CareerLast' },
        1 : { sorter : 'CareerLast' },
        2 : { sorter : 'CareerLast' },
        // etc
        20 : { sorter : 'CareerLast' }
    }
    
  2. Используйте плагин метаданных и добавьте определение сортировщика в класс заголовка:

    // untested, but I think this will work
    $('table').find('thead th').addClass("{sorter:'CareerLast'}");
    $('table').tablesorter();
    
  3. Попробуйте мою разветвленную версию tableorter и просто добавьте сортировщик в качестве имени класса

    $('table').find('thead th').addClass('sorter-CareerLast');
    $('table').tablesorter();
    
0 голосов
/ 10 июня 2015

вернуть true из 'is' в addParser

Например: этот синтаксический анализатор присваивает 'N / A' значение -1 $.tablesorter.addParser({ id: 'num-with-na', is: function(s) { //always use this return true; }, format: function(n){ return n === 'N/A' ? -1 : n; }, type: 'numeric' });

...