Estou com o seguinte código (modificado), referente ao curso de JQuery, e ao tentar utilizar função parent passando um class (parent(".resultado")) ou elemento (parent("tr")) a função não retornou a tr "pai de todos" os elementos que contém o botão que foi clicado.
// Funciona $(this).parent().parent().remove();
// Não funciona $(this).parent(".resultado").remove(); $(this).parent("tr").remove();
function onBtnRemoverResultadoClick(e) {
e.preventDefault();
// Evento é chamado com sucesso.
// Funciona
$(this).parent().parent().remove();
// Não funciona
// cursos.alura.com.br/course/jquery-a-biblioteca-do-mercado/task/21106
// console.log( $(this).parent(".resultado"));
// $(this).parent(".resultado").remove();
// $(this).parent("tr").remove();
}
function criarTrResultado(usuario, quantidadePalavras) {
// Cria os elementos
var trResultado = $("<tr>").addClass("resultado");
var tdUsuario = $("<td>").text(usuario);
var tdQuantidadePalavras = $("<td>").text(quantidadePalavras);
var tdBtnRemoverResultado = $("<td>");
var link = $("<a>").addClass("remove-resultado").attr("href","#");
var icone = $("<i>").addClass("small").addClass("material-icons").text("delete");
// monta a árvore html
link.append(icone);
tdBtnRemoverResultado.append(link);
trResultado.append(tdUsuario);
trResultado.append(tdQuantidadePalavras);
trResultado.append(tdBtnRemoverResultado);
// assina evento de click no botão/link
$(link).click(onBtnRemoverResultadoClick);
return trResultado;
}