Вот как я бы это сделал ... установить заголовок данных для каждой ячейки заголовка с текстом, который вы хотите добавить. Но вместо того, чтобы говорить «по», «по возрастанию» или «по убыванию», мы будем использовать заменяемую переменную с именем «{dir}» для направления:
<table class="tablesorter">
<thead>
<tr>
<th data-title="sort {dir} last name">Last</th>
<th data-title="sort {dir} first name">First</th>
</tr>
</thead>
<tbody>
<tr><td>Smith</td><td>John</td></tr>
<tr><td>Jones</td><td>Timothy</td></tr>
<tr><td>Wong</td><td>Jin</td></tr>
<tr><td>O'Brien</td><td>Shaun</td></tr>
<tr><td>Parker</td><td>Peter</td></tr>
</tbody>
</table>
Затем мы добавляем функцию, которая просматривает каждую ячейку заголовка таблицы и обновляет заголовок в зависимости от того, какое имя класса он находит. Вызовите его, а также убедитесь, что он вызывается после каждой сортировки таблицы.
var table = $('table'),
updateTitles = function(){
var t, $this;
table.find('thead th').each(function(){
$this = $(this);
t = "by";
if ($this.hasClass('headerSortUp')) {
t = "ascending";
} else if ($this.hasClass('headerSortDown')) {
t = "descending";
}
$this.attr('title', $this.attr('data-title').replace(/\{dir\}/, t) );
});
};
table.tablesorter();
// bind to sort events
table.bind("sortEnd",function() {
updateTitles();
});
// set up titles
updateTitles();
Вот демоверсия .