В демоверсии документов используются другие (древние) версии jQuery и Tablesorter, чем вы. Из сравнения источников я вижу, что автоматическое определение диапазона столбцов / строк никогда не выполняется в более новой версии. Функция обнаружения промежутков все еще там - но просто не вызывается. Не знаю, почему произошла эта регрессия.
Как говорится, я могу запустить ваше демо, используя эту настройку:
$(document).ready(function(){
$('#rowspan').tablesorter({
headers: {
4: {sorter: false},
5: {sorter: false},
6: {sorter: false},
7: {sorter: false}
}
});
});
Что, если вы знаете, что colspan>1
является безопасным критерием, то я бы вывел индексы заголовков следующим образом:
$(function(){
var headers = {};
$('#rowspan thead th').each(function(i,h){
if (this.colSpan>1) { headers[i] = { sorter: false }; }
});
$('#rowspan').tablesorter({
headers: headers
});
});
Обновление:
«Рабочий» пример: http://jsbin.com/ucija3
Пример выглядит так, как вы просили, или я не понимаю ваш вопрос. Однако я только что обнаружил, что нажатие на заголовки с меткой 3.1 - 4.2 вызывает исключения. Итак, я думаю, мой окончательный ответ на ваш вопрос: Текущая версия этого плагина не работает со строками или кольспанами.
Обновление:
Простой патч, чтобы сделать эту работу:
В функции buildHeaders
(строка 290) измените строку $tableHeaders = $("thead th",table);
на:
$tableHeaders = $("thead th:not([colspan]),thead th[colspan=1]",table);
Более сложный гибкий патч:
Добавить параметр конфигурации в buildHeaders
(строка 290):
function buildHeaders(table, config) { # ...
И фильтр до $tableHeaders
(строка 299):
$tableHeaders = $("thead th",table).filter( config.headerFilter || '*' );
Передайте конфигурацию buildHeaders, когда она вызывается (строка 504):
$headers = buildHeaders(this, config);
Добавить фильтр при инициализации сортировщика таблиц:
$(function(){
$('#rowspan').tablesorter({
headerFilter: function(){ return this.colSpan == 1; }
});
});
Вот предварительно исправленная версия , которая включает в себя опцию headerFilter
и ее демонстрацию в действии.