Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Duvida usando Ajax com JSP

não estou conseguindo deletar um objeto no meu Table, depois que tentar excluir, preciso atualizar a pagina aí que o objeto que selecionei é deletado. não sei o que estou errando.

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Tarefa adicionada com sucesso</title>
<script type="text/javascript" src="resources/js/jquery-3.2.1.js"></script>
</head>
<body>
<script type="text/javascript">
    function finalizaAgora(id) { //meu método
        $.post("finalizaTarefa",{'id' : id},function(){ //método da servlet passando o id
            $("#tarefa_" + id).html("finalizado") //informa essa informação
        });
    }

    function removendoTarefa(id) {
        $.post("removeTarefa",{'id' : id}, function() {
            $("#tabelaTarefa" +id).closest("tr").hide();
        });
    }


</script>
    <a href="novaTarefa"> Nova Tarefa?</a>    <br /> <br />

    <table border="1" id="tabelaTarefa">
        <tr>
            <th>ID</th>
            <th>descricao</th>
            <th>finalizado</th>
            <th>Data de Finalização</th>
        </tr>
        <c:forEach items="${tarefas}" var="tarefa">
            <tr>
                <td>${tarefa.id}</td>
                <td>${tarefa.descricao}</td>

                <c:if test="${tarefa.finalizado eq false}">
                    <td id="tarefa_${tarefa.id}">
                        <a href="#" onclick="finalizaAgora(${tarefa.id})"> Finalizar Agora! </a>
                    </td>
                </c:if>
                <c:if test="${tarefa.finalizado eq true}">
                    <td id="tarefa_${tarefa.id}">
                     finalizado 
                     </td>
                </c:if>
                <td id="tarefaData_"${tarefa.id}>
                    <fmt:formatDate value="${tarefa.dataFinalizacao.time}" pattern="dd/MM/yyyy" />
                </td>
                <td>
                    <a href="#" onclick="removendoTarefa(${tarefa.id})" ><img alt="deletar Tarefa" src="resources/img/del.png"></a>
                </td>
                <%-- <td>
                    <a href="removeTarefa?id=${tarefa.id}"><img alt="deletar Tarefa" src="resources/img/del.png"></a>
                </td> --%>
                <td>
                    <a href="mostraTarefaSelecionada?id=${tarefa.id}">atualizar</a>
                </td>
            </tr>
        </c:forEach>
    </table>
</body>
</html>
2 respostas
solução!

Oi, acho que você precisa trocar aqui:

 $("#tabelaTarefa" +id).closest("tr").hide();

para

 $("#tarefa_" +id).closest("tr").hide();

Resolvido!

Muito obrigado...