En el resto de esta respuesta, sustituya "eliminar" y "detente" con la operación que está intentando implementar. por ejemplo "explotado", "mordido" o "editado"
El código JSP que ha publicado tiene varios problemas.
- sin etiqueta de cierre para el elemento
<td>
.
- su formulario está publicando en "items.html". Esto parece ser una página html. Si es así, tu acción de formulario es 0% correcta.
- cada formulario tiene la misma identificación, por lo que la llamada
getElementById()
nunca puede funcionar.
href="#"
hará que su página se desplace hacia la parte superior cuando el usuario haga clic en el enlace.
- No identifica, para el usuario, el registro que se eliminará.
Aquí es lo que pienso que deseas:
<c:forEach var="record" items="${records}">
<tr>
<td>
<form:form method="post">
<input type="hidden" name="activity" value="delete"/>
<input type="hidden" name="record" value="${record}"/>
<a href="javascript:this.form.submit()">Delete ${record}</a>
</form:form>
<td>
</tr>
</c:forEach>
El fragmento publicará al controlador actual primavera. Se incluyen dos campos en la publicación: "actividad" que identifica esto como una eliminación y "registro" que identifica el registro que se eliminará. Según sus necesidades, agregue action="some url"
a la etiqueta form:form
.
es su pregunta si y cómo puede vincular ese campo a la forma? – tolitius
Sí, creo, se puede ver que aquí estoy usando for loop y la variable oculta se completará con el tiempo de ejecución del ciclo así que si uso entonces creo que el registro no se completará. entonces mi pregunta es qué tengo que escribir en mi controlador para que se vincule con los valores que estoy obteniendo del ciclo. –
user965884