$.tablesorter.addParser({ // set a unique id id: 'title', is: function (s) { // return false so this parser is not auto detected return false; }, format: function (s) { // format your data for normalization return s.match(/title="(.*?)"/)[1].toLowerCase(); }, // set type, either numeric or text type: 'text' }); $.tablesorter.addParser({ // set a unique id id: 'date', is: function (s) { // return false so this parser is not auto detected return false; }, format: function (s) { // format your data for normalization var match = s.match(/data-date="(.*?)"/)[1]; if (match === '') return Date.create().addYears(100).format(Date.ISO8601_DATETIME); return match; }, // set type, either numeric or text type: 'text' }); $.tablesorter.addParser({ // set a unique id id: 'innerHtml', is: function (s) { // return false so this parser is not auto detected return false; }, format: function (s) { // format your data for normalization return $(s).get(0).innerHTML; }, // set type, either numeric or text type: 'text' });