Deletar com a mensagem de confirmação

5 respostas
K

Olá pessoal. Seguinte, estou tendo problemas para fazer aparecer a msg de confirmação p/ deletar registros. É um sisteminha, que ao clicar no link de Excluir deverá aparecer a msg de confirmação, perguntando se o usuário deseja mesmo excluir tal registro.. mas não consegui arrumar o código p/ funcionar. Aí vaí o código:

<table border = "1">
	<tr>
		<td align = "center"> Id de matrícula </td>
		<td align = "center"> Nome </td>
		<td align = "center"> Turno </td>
        <td align = "center"> Alterar </td>
        <td align = "center"> Excluir </td>
    </tr>
<%
ResultSet res = stm.executeQuery("select * from alunos order by id");
while (res.next()) {        
	int Id = res.getInt("id");
	String Nome = res.getString("nome"); 	
	String Turno = res.getString("turno");
	out.println("<tr>");
		out.println("<td align = \"center\">" + Id + "</td>");
		out.println("<td align = \"center\">" + Nome + "</td>");
		out.println("<td align = \"center\">" + Turno + "</td>");
		out.println("<td>" + "<a href = alterar.jsp?id="+Id+">" + "Alterar" + "</a>" + "</td>");
		out.println("<td>" + "<a href = exclusao.jsp?id="+Id onclick = return confirm('Tem certeza que você deseja excluir este registro?');">" + "Excluir" + "</a>"  + "</td>");  // -> A LINHA DE CIMA É A LINHA CUJA SINTAXE PRECISA SER ARRUMADA, A QUAL NÃO ESTOU CONSEGUINDO.
}
%>
</table><p>

Aí, aparece o seguinte erro:

org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 50 in the jsp file: /Index.jsp
Syntax error, insert ")" to complete MethodInvocation
47: out.println("" + Nome + "");
48: out.println("" + Turno + "");
49: out.println("" + "" + "Alterar" + "" + "");
50: out.println("" + "" + "Excluir" + "" + "");
51: out.println("");
52: }
53: %>

An error occurred at line: 50 in the jsp file: /Index.jsp
Syntax error, insert ";" to complete Statement
47: out.println("" + Nome + "");
48: out.println("" + Turno + "");
49: out.println("" + "" + "Alterar" + "" + "");
50: out.println("" + "" + "Excluir" + "" + "");
51: out.println("");
52: }
53: %>

An error occurred at line: 50 in the jsp file: /Index.jsp
Syntax error on token "return", delete this token
47: out.println("" + Nome + "");
48: out.println("" + Turno + "");
49: out.println("" + "" + "Alterar" + "" + "");
50: out.println("" + "" + "Excluir" + "" + "");
51: out.println("");
52: }
53: %>

An error occurred at line: 50 in the jsp file: /Index.jsp
Invalid character constant
47: out.println("" + Nome + "");
48: out.println("" + Turno + "");
49: out.println("" + "" + "Alterar" + "" + "");
50: out.println("" + "" + "Excluir" + "" + "");
51: out.println("");
52: }
53: %>

An error occurred at line: 50 in the jsp file: /Index.jsp
Invalid character constant
47: out.println("" + Nome + "");
48: out.println("" + Turno + "");
49: out.println("" + "" + "Alterar" + "" + "");
50: out.println("" + "" + "Excluir" + "" + "");
51: out.println("");
52: }
53: %>

Por favor, se alguém souber aí dá um toque... Obrigado!!!

5 Respostas

G

http://www.w3schools.com/HTMLDOM/met_win_confirm.asp

axo q n precisaria desse return na chamada do metodo …

F

O trecho do seu codigo que começa o “return” da função Javascript:

onclick = return confirm

Nao esta como STRING. O scriplet esta entendendo como instrução Java, e nao String como deveria ser.

K

O trecho do seu codigo que começa o “return” da função Javascript:

onclick = return confirm

Nao esta como STRING. O scriplet esta entendendo como instrução Java, e nao String como deveria ser.

Po fabim então, tb não deu certo:
Tentei isso:

out.println("<td>" + "<a href = exclusao.jsp?id="+Id onclick = "return" confirm('Tem certeza que você deseja excluir este registro?');">" + "Excluir" + "</a>"  + "</td>");

E isso:

out.println("<td>" + "<a href = exclusao.jsp?id="+Id onclick = "return confirm('Tem certeza que você deseja excluir este registro?')";> + "Excluir" + "</a>"  + "</td>");

Mas ainda assim ñ funfou. :frowning:

E acredito que ñ se deva tirar o return ñ guimoz… pq fiz assim em PHP e funcionou blz…

K

Atualizando…

Bom, agora meu código está assim:

out.println("<td>" + "<a href = exclusao.jsp?id="+Id+ onclick =" return confirm('Tem certeza que você deseja excluir este registro?');>" + "Excluir" + "</a>" + "</td>"); out.println("</tr>");

E aparece o seguinte erro:
org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 50 in the jsp file: /Index.jsp

onclick cannot be resolved

47: 		out.println("<td align = “center”>" + Nome + “”);

48: 		out.println("<td align = “center”>" + Turno + “”);

49: 		out.println("
" + “<a href = alterar.jsp?id=”+Id+">" + “Alterar” + “” + “”);
50: out.println("" + “<a href = exclusao.jsp?id=”+Id+ onclick =" return confirm(‘Tem certeza que você deseja excluir este registro?’);>" + “Excluir” + “” + “”);
51: out.println("");
52: }
53: %>
An error occurred at line: 50 in the jsp file: /Index.jsp

Syntax error on token =, != expected

47: 		out.println("<td align = “center”>" + Nome + “”);

48: 		out.println("<td align = “center”>" + Turno + “”);

49: 		out.println("
" + “<a href = alterar.jsp?id=”+Id+">" + “Alterar” + “” + “”);
50: out.println("" + “<a href = exclusao.jsp?id=”+Id+ onclick =" return confirm(‘Tem certeza que você deseja excluir este registro?’);>" + “Excluir” + “” + “”);
51: out.println("");
52: }
53: %>

No primeiro erro, diz “onclick cannot be resolved”. Então fucei e coloquei o onclick como string, deixando assim:

out.println("<td>" + "<a href = exclusao.jsp?id="+Id+ "onclick = return confirm('Tem certeza que você deseja excluir este registro?');>" + "Excluir" + "</a>" + "</td>"); out.println("</tr>");

Aí apareceu finalmente a tabela com os registros… só q qdo cliquei em excluir, aí apareceu outro erro.

Só queria deixar essa linha do excluir funcionando…

Mais alguém?

K

blz galera, já resolvi… a linha de excluir ficou assim:

out.println("<td>" + "<a href = alterar.jsp?id="+Id+">" + "Alterar" + "</a>" + "</td>");%> <td><a href = exclusao.jsp?id=<%= Id %> onclick = "return confirm('Você tem certeza que deseja excluir este registro?')"> Excluir </a> </td> <% out.println("</tr>");

Foi só tirar esta linha das tags do jsp, deixar como html mesmo p/ ficar mais fácil e voila… Mais um caso resolvido :smiley:

A persistência é o maior ingrediente na solução de qualquer problema haha :-o … flw

Criado 13 de fevereiro de 2009
Ultima resposta 14 de fev. de 2009
Respostas 5
Participantes 3