jquery.tablesorter で複雑な <thead> に対応する方法

jquery.tablesorterはとても便利。あいかわらずJavascriptのコードはよくわからんけど。(勉強して無い俺が悪い。)
使ってく中で身に着けたちょっとしたTIPS。

jquery.tablesorterでは、theadタグ内のthタグを順番にインデックス振っていくのだけれども、thead内でcolspanとか使って複雑なヘッダ構造をしていると、tbodyの列とヘッダのインデックスがずれてしまう。

これを回避するためには、

  1. tablesorterのインデックスとしたい thタグ は <th class="sortHeader"> とclass属性をつける。
  2. jquery.tablesorter.js の buildHeaderというfunctionを1箇所修正する。

具体的には

$tableHeaders = $("thead th",table);

となってるところを

$tableHeaders = $("thead th.sortHeader",table);

とします。