Habe rhermanos clabbers despues de buscar por internet con google, encontre un manual que enseñaba a sortear la pagina (entiendase ordenarla) y a su vez paginarla. Oh maravilla Oh sorpresa Oh, tres veces Oh.

En fin la partede sortearla funciona de perlas muy bien, pero en cuanto a paginacion no me sale, he leido y releido el codigo y no le encuentro la falla, claro tampoco es que yo sepa un chorro de JQuery o de JavaScript, en fin lo adpate a mi paginita y corrio como dije bien en la partede Sort pero naranjas en la parte de paginado,

Cuando lo corro sobre FF 3.0 no me da error pero el paginado no funciona me salen todos los registros de mi busqueda , eso si los numeritos de la cantidad de paginas que deberian salir si los pone pero no funcionan ni pegandoles con palo.

Cuando lo corro sobre IE 7.0 me sale "Error en la Pagina" en la barra de estado y cuando le doy click me dice error en la linea tal columna tal : El objeto no acepta esta propiedad o metodo. Me parece raro pues esa parte la he copiado tal cual sale en el manual, y se supone deberia funcionar, alguien que entienda mas de esto puede ayudarme aqui esta el codigo completo de sorteo y paginacion y pongo un comentario en la linea que reporta error

Código Javascript :

$.fn.alternateRowColors = function() {
  $('tbody tr:odd', this).removeClass('even').addClass('odd');
  $('tbody tr:even', this).removeClass('odd').addClass('even');
  return this;
};

$(document).ready(function() {
  var alternateRowColors = function($table) {
    $('tbody tr:odd', $table).removeClass('even').addClass('odd');
    $('tbody tr:even', $table).removeClass('odd').addClass('even');
  };
  $('table.sortable').each(function() {
    var $table = $(this);
    $table.alternateRowColors($table);
    $table.find('th').each(function(column) {
      var findSortKey;
      if ($(this).is('.sort-alpha')) {
        findSortKey = function($cell) {
          return $cell.find('.sort-key').text().toUpperCase() +
                                    ' ' + $cell.text().toUpperCase();
        };
      }
      else if ($(this).is('.sort-numeric')) {
        findSortKey = function($cell) {
          var key = parseFloat($cell.text());
          return isNaN(key) ? 0 : key;
        };
      }
      else if ($(this).is('.sort-date')) {
        findSortKey = function($cell) {
          return Date.parse($cell.text());
        };
      }
      if (findSortKey) {
        $(this).addClass('clickable').hover(function() {
          $(this).addClass('hover');
        }, function() {
          $(this).removeClass('hover');
        }).click(function() {
          var newDirection = 1;
          if ($(this).is('.sorted-asc')) {
            newDirection = -1;
          }
          rows = $table.find('tbody > tr').get();
          $.each(rows, function(index, row) {
            row.sortKey =
                        findSortKey($(row).children('td').eq(column));
          });
          rows.sort(function(a, b) {
            if (a.sortKey < b.sortKey) return -newDirection;
            if (a.sortKey > b.sortKey) return newDirection;
            return 0;
          });
          $.each(rows, function(index, row) {
            $table.children('tbody').append(row);
            row.sortKey = null;
          });
          $table.find('th').removeClass('sorted‑asc')
                                        .removeClass('sorted-desc');
          var $sortHead = $table.find('th').filter(':nth-child('
                                               + (column + 1) + ')');
          if (newDirection == 1) {
            $sortHead.addClass('sorted-asc');
          } else {
            $sortHead.addClass('sorted-desc');
          }
          $table.find('td').removeClass('sorted')
            .filter(':nth-child(' + (column + 1) + ')')
                                                 .addClass('sorted');
          $table.alternateRowColors($table);
          $table.trigger('repaginate');
        });
      }
    });
  });
});

$(document).ready(function() {
  $('table.sortable').each(function() {

 /*La linea de arriba originalmente decia:

  $('table.paginated').each(function() {

  pero daba el mismo resultado con y necesitaba que mi tabla
  tuviera class="paginated" lo cual hace que la parte de sort no
  funcione pues esa pide class="sortable" */

    var currentPage = 0;
    var numPerPage = 5;


    var $table = $(this);
    $table.bind('repaginate', function() {
      $table.find('tbody tr').show()
        .lt(currentPage * numPerPage)
          .hide()
        .end()
        .gt((currentPage + 1) * numPerPage - 1)
          .hide()
        .end();
    });
    var numRows = $table.find('tbody tr').length;
    var numPages = Math.ceil(numRows / numPerPage);
    var $pager = $('<div class="pager"></div>');
    for (var page = 0; page < numPages; page++) {
      $('<span class="page-number"> ' + (page + 1) + ' </span>')
       .bind('click', {'newPage': page}, function(event) {
         currentPage = event.data['newPage'];
         $table.trigger('repaginate');
         $(this).addClass('active').siblings().removeClass('active');
       })
       .appendTo($pager).addClass('clickable');
    }
    $pager.find('span.page-number:first').addClass('active');
    $pager.insertAfter($table);
    $table.trigger('repaginate');
  });
});


El jquery esta bien cargado pues tengo otras scrips en la pagina que funcionan muy bien