$.load() esegue una richiesta asincrona, ovvero la funzione non attende l'arrivo dei dati prima di tornare. Pertanto $("table").tablesorter();
viene eseguito molto probabilmente prima che la tabella venga aggiunta al documento. O effettua una chiamata sincrona o (ancora meglio) passa un gestore per caricare l'evento completo.
<script type="text/javascript">
$(document).ready(function() {
$("#container").load(
"table.php?randval="+Math.random(),
null,
function (responseText, textStatus, req) {
$("table").tablesorter();
}
);
});
</script>