jQuery Tablesorter - столбец не сортируется по алфавиту

Я не уверен, что здесь происходит не так. Это страница: http://www.utexas.edu/ssw/cswr/projects/project-list/

Первый столбец выполняет сортировку, но возвращает данные в неправильном порядке (в алфавитном порядке).

Сама таблица создается пользовательской функцией PHP, которая извлекает информацию из базы данных WordPress. Я думал, что это может быть проблемой, но, как вы можете видеть, четвертый столбец (Дата окончания) сортируется правильно. Я также подумал, что это могут быть ссылки в первом столбце, которые все испортили, но добавление кода извлечения текста из эта страница полностью нарушила сортировку.

Это код jQuery, который я сейчас использую для вызова Tablesorter:

<script type="text/javascript" id="js">

   jQuery(document).ready(function($) { 
       $(document).ready(function() {
          // call the tablesorter plugin, the magic happens in the markup
          $("#projectTable").tablesorter({ 
              // pass the headers argument and assing a object 
              //debug: true,
              //sortList: [[0,0]],
              headers: { 
                  0: { 
                  // set the column to sort as text  
                      sorter: 'text',
                  },
                  // assign the secound column (we start counting zero) 
                  1: { 
                      // disable it by setting the property sorter to false 
                      sorter: false,
                  }, 
                  // assign the third column (we start counting zero) 
                  2: { 
                      // disable it by setting the property sorter to false 
                      sorter: false
                  },
                  3: {
                        sorter:'digit'
                  }
              }


          });

               // Works only with plugin modification
                $("#projectTable").bind("sortStart",function(e) { 
                    if( $(e.target).hasClass('header') ) {
                        $("#overlay").show();
                    }
                }).bind("sortEnd",function(e) {
                    if( $(e.target).hasClass('header') ) {
                        $("#overlay").hide();
                    }
                });

         });
    }); 
</script>

Спасибо за вашу помощь!


person Michelle    schedule 14.06.2010    source источник


Ответы (2)


Вам нужно определить textExtraction как complex, так как у вас есть ссылки в элементах.

См.: http://tablesorter.com/docs/#options.

person Aaron Harun    schedule 14.06.2010
comment
Я попытался добавить textExtraction : complex непосредственно перед строкой «заголовки» в приведенном выше коде, но это полностью нарушает сортировку. Я также пробовал все примеры, перечисленные в документации в отношении textExtraction, но они тоже не сработали - вероятно, я не помещаю их в нужное место? Спасибо за вашу помощь! - person Michelle; 15.06.2010
comment
не бери в голову!! :) Я добавил одинарные кавычки вокруг слова «сложный», и это сработало. Спасибо! - person Michelle; 15.06.2010

Проблема в том, что он сортирует по URL-адресу в ссылке, а не по тексту.

Чтобы исправить это, вам может потребоваться создать настраиваемые критерии сортировки (свойство textExtraction).

person Powerlord    schedule 14.06.2010