NOTE!

Demo

Account #
First Name
Last Name
Age
Location
a1a10 AnderE Parker 28 Béchar
a1a2 Ändere Hood 33 Bebington
A1a1 Andére Kent 18 Berlin
A2b2 CotÉ Almighty 45 Beckum
A1d2 CÔte Evans 56 Curaçao
a2b11 CÔtÉ Clark 44 Béjaïa
A2b1 Çote Presley 24 Bekkevoort
A1b0 Andéré Carter 40 Bègles

Javascript

$(function() {

// these default equivalents were obtained from a table of equivalents
// provided by sugar.js sorting alogrithms: http://sugarjs.com/sorting
/*
$.tablesorter.characterEquivalents = {
"a" : "\u00e1\u00e0\u00e2\u00e3\u00e4", // áàâãä
"A" : "\u00c1\u00c0\u00c2\u00c3\u00c4", // ÁÀÂÃÄ
"c" : "\u00e7", // ç
"C" : "\u00c7", // Ç
"e" : "\u00e9\u00e8\u00ea\u00eb", // éèêë
"E" : "\u00c9\u00c8\u00ca\u00cb", // ÉÈÊË
"i" : "\u00ed\u00ec\u0130\u00ee\u00ef", // íìIîï
"I" : "\u00cd\u00cc\u0130\u00ce\u00cf", // ÍÌIÎÏ
"o" : "\u00f3\u00f2\u00f4\u00f5\u00f6", // óòôõö
"O" : "\u00d3\u00d2\u00d4\u00d5\u00d6", // ÓÒÔÕÖ
"S" : "\u00df", // ß
"u" : "\u00fa\u00f9\u00fb\u00fc", // úùûü
"U" : "\u00da\u00d9\u00db\u00dc" // ÚÙÛÜ
};
*/
// modify the above defaults as follows
$.extend( $.tablesorter.characterEquivalents, {
"ae" : "\u00e6", // expanding characters æ Æ
"AE" : "\u00c6",
"oe" : "\u00f6\u0153", // œ Œ
"OE" : "\u00d6\u0152",
"d" : "\u00f0", // Eth (ð Ð)
"D" : "\u00d0",
"o" : "\u00f3\u00f2\u00f4\u00f5", // remove ö because it's in the oe now
"O" : "\u00d3\u00d2\u00d4\u00d5" // remove Ö because it's in the OE now
});

$("table").tablesorter({
theme : 'blue',
// Enable use of the characterEquivalents reference
sortLocaleCompare : true,
// if false, upper case sorts BEFORE lower case
ignoreCase : true
});
});

HTML

<table class="tablesorter">
<thead>
<tr>
<th>Account #</th>
<th>First Name</th>
<th>Last Name</th>
<th>Age</th>
<th>Location</th>
</tr>
</thead>
<tbody>
<tr>
<td>a1a10</td>
<td>AnderE</td>
<td>Parker</td>
<td>28</td>
<td>Béchar</td>
</tr>
<tr>
<td>a1a2</td>
<td>Ändere</td>
<td>Hood</td>
<td>33</td>
<td>Bebington</td>
</tr>
<tr>
<td>A1a1</td>
<td>Andére</td>
<td>Kent</td>
<td>18</td>
<td>Berlin</td>
</tr>
<tr>
<td>A2b2</td>
<td>CotÉ</td>
<td>Almighty</td>
<td>45</td>
<td>Beckum</td>
</tr>
<tr>
<td>A1d2</td>
<td>CÔte</td>
<td>Evans</td>
<td>56</td>
<td>Curaçao</td>
</tr>
<tr>
<td>a2b11</td>
<td>CÔtÉ</td>
<td>Clark</td>
<td>44</td>
<td>Béjaïa</td>
</tr>
<tr>
<td>A2b1</td>
<td>Çote</td>
<td>Presley</td>
<td>24</td>
<td>Bekkevoort</td>
</tr>
<tr>
<td>A1b0</td>
<td>Andéré</td>
<td>Carter</td>
<td>40</td>
<td>Bègles</td>
</tr>
</tbody>
</table>

Next up: Sorting with Multiple Tbodies ››