Soluções ao desafio jQuery - Teste seus conhecimentos-1

Clique em qualquer célula das tabelas para ver o script em ação

Autor: Leonardo Ribeiro

Linhas acima Cabeçalho Cabeçalho Cabeçalho
9 Rodapé
1 Célula Célula Célula
2 Célula Célula Célula
3 Célula Célula Célula
4 Célula Célula Célula
5 Célula Célula Célula
6 Célula Célula Célula
7 Célula Célula Célula
8 Célula Célula Célula

Código:

$('tr').click(function(){
  alert($('thead tr, tbody tr, tfoot tr')
  .index(this))
});
Notas do Maujor
1 - O Leonardo valeu-se do fato que o método index()
para tabelas leva em conta thead, tbody e tfoot
para retornar o índice em tabelas.
Bem pensado!
2- Simplificação do script:
$('tr').click(function(){
  alert( $('tr').index(this) );
});

Autor: Júlio César Bitencourt Silva

Linhas acima Cabeçalho Cabeçalho Cabeçalho
9 Rodapé
1 Célula Célula Célula
2 Célula Célula Célula
3 Célula Célula Célula
4 Célula Célula Célula
5 Célula Célula Célula
6 Célula Célula Célula
7 Célula Célula Célula
8 Célula Célula Célula

Código:

$("tr").click(function(){
  var objtfoot = $("table tfoot");
  $("table").remove("table tfoot");
  $("table").append(objtfoot);
  alert($("tr:lt(" + $("tr")
  .index(this) + ")").size());
	});
Nota:
O próprio Júlio César alerta que sua solução
altera o DOM

Autor: César Castro

Linhas acima Cabeçalho Cabeçalho Cabeçalho
9 Rodapé
1 Célula Célula Célula
2 Célula Célula Célula
3 Célula Célula Célula
4 Célula Célula Célula
5 Célula Célula Célula
6 Célula Célula Célula
7 Célula Célula Célula
8 Célula Célula Célula

Código:

var headLength = $('thead tr').length;
  var bodyLength = $('tbody tr').length;
  var footLength = $('tfoot tr').length;
  $('thead tr').each(function(ind,dom){
    $(this).click(function(){
    window.alert(ind);
    });
  });
  $('tbody tr').each(function(ind,dom){
    $(this).click(function(){
    window.alert(ind+headLength);
    });
  });
  $('tfoot tr').each(function(ind,dom){
    window.alert(headLength+bodyLength+ind);
    });
  });

Autor: Maujor

Linhas acima Cabeçalho Cabeçalho Cabeçalho
9 Rodapé
1 Célula Célula Célula
2 Célula Célula Célula
3 Célula Célula Célula
4 Célula Célula Célula
5 Célula Célula Célula
6 Célula Célula Célula
7 Célula Célula Célula
8 Célula Célula Célula

Código:

$('tr').click(function() {
$(this).each(function(i) {
alert($(this)[i].rowIndex);
});
})