Boa Tarde,
estou com uma grande dúvida, que já tentei de diversas formas e não funciona, a minha dúvida é a seguinte, gostaria de saber se no "s:mvcUrl" abaixo, que está dentro do "$.get" conseguiria enviar o "id" recebido do :
<a href="#" onClick="removerEntrada(${entrada.id})">Remover</a>
Pois, já tentei enviar com o ".arg" só que se eu colocar dessa forma:
function removerEntrada(id){
alert("JAVASCRIPT ID: " + id)
$.get("${s:mvcUrl('PPFC#removerEntrada').arg(0,'id').build()}", {'id' : id}, function() { // 1> Utilizar o RequestMapping(pagaConta), envia o ID do que está sendo PAGO AGORA // Como o SPRING está tratando o MAPEAMENTO, para encontrar o correto REQUEST MAPPING, foi utilizado o "mvcUrl"
$("#entrada_"+id).html("removido"); // 2> Aqui muda a COLUNA DA LINHA ATUAL para um HTML "Paga". (Assim evitando ATUALIZAÇÃO DA PÁGINA) -> #conta_"+id) = Se referencia a <td> que tem isso.
}); // $.post ("Aqui fica o que vai como requisição","Aqui se utiliza o que vem de RESPONSE")
}
ou sem os "apostos" e etc, ele não envia, apenas se eu colocar por exemplo:
$.get("${s:mvcUrl('PPFC#removerEntrada').arg(0,'4').build()}",
Ai sim, ele conseguiria remover o item da lista que tem o ID 4.
------- JSP:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib tagdir="/WEB-INF/tags" prefix="tags" %>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<%@ taglib uri="http://www.springframework.org/tags" prefix="s" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<tags:pageTemplate titulo="Lista Produtos">
<jsp:attribute name="extraScripts">
<script>
//$.get('aqui vai a URL', 'depois os dados', 'depois a função de sucesso');
function removerEntrada(id){
alert("JAVASCRIPT ID: " + id)
$.get("${s:mvcUrl('PPFC#removerEntrada').arg(0,'4').build()}", {'id' : id}, function() { // 1> Utilizar o RequestMapping(pagaConta), envia o ID do que está sendo PAGO AGORA // Como o SPRING está tratando o MAPEAMENTO, para encontrar o correto REQUEST MAPPING, foi utilizado o "mvcUrl"
$("#entrada_"+id).html("removido"); // 2> Aqui muda a COLUNA DA LINHA ATUAL para um HTML "Paga". (Assim evitando ATUALIZAÇÃO DA PÁGINA) -> #conta_"+id) = Se referencia a <td> que tem isso.
}); // $.post ("Aqui fica o que vai como requisição","Aqui se utiliza o que vem de RESPONSE")
}
</script>
</jsp:attribute>
<jsp:body>
<div class="container">
<h1>Entradas || ${empresa}</h1>
<table class="table table-striped table-bordered table-hover " >
<tr>
<th>ID</th>
<th>EMPRESA</th>
<th>CÓD.BARRA</th>
<th>DESCRIÇÃO</th>
<th>FORNECEDOR</th>
<th>QT.TOTAL</th>
<th>DATA VENCIDO</th>
<th>REMOVER</th>
</tr>
<c:forEach items="${produtos}" var="entrada"> <!-- Vai receber um List de Produtos para mostrar todos os produtos buscados -->
<tr>
<td>${entrada.id}</td>
<td>${entrada.empresa.nome}</td>
<td>${entrada.produto.codBarra}</td>
<td>${entrada.produto.nome}</td>
<td>${entrada.fornecedor.nome}</td>
<td>${entrada.quantidadeTotal}</td>
<td><fmt:formatDate value="${entrada.dataVencimento.time}" pattern="dd/MM/yyyy"/></td>
<td id="entrada_${entrada.id}">
<a href="#" onClick="removerEntrada(${entrada.id})">Remover</a>
</td>
</tr>
</c:forEach>
</table>
</div>
</jsp:body>
</tags:pageTemplate>
------- MÉTODO REMOVER DO CONTROLLER:
// REMOVE ENTRADA
@RequestMapping(value="/remover")
public void removerEntrada(Long id, HttpServletResponse resp){
System.out.println("MÉTODO ID: " + id);
produtoPorFornecedorDao.remove(id);
resp.setStatus(200); // Indica para A "FUNCTION" que requisitou esse método que tudo funcionou OK (200) (E assim executando o response do FUNCTION)
}