You won't get far using JS' sort(). I tend to use the TableSorter plugin for jQuery, which is fairly easy to get going, and even easier if you've already got jQuery loaded.
It can automatically pick up how to sort certain data (strings, ints, etc), but for more complex data (e.g. unusually formatted dates), you may need to write a little extra code to help it along. More info at: http://tablesorter.com/docs/
I think it's also possible to style the sorted tables nicely - the ones on tablesorter.com are rather drab...