JSP/Servlet中的隐藏表单



我想将参数从jsp获取到servelet。所以我使用了输入表单,它适用于姓名,但不适用于我的ID。以下是我的JSP代码:

<tr>
<td><form method="post" action="ServBddInsa">
<input type="hidden" name="id" id="id" value="testId"/>
<c:out value="${ utilisateur.id }" />
</form>
</td>                                                           
<td><c:out value="${ utilisateur.prenom }" /></td>
<td><c:out value="${ utilisateur.nom }" /></td>
<td><form method="post" action="ServBddInsa">                   
<p>                         
<label for="prenom"> Prenom :</label> <input type="text"
id="prenom" name="prenom" />                                                
<label for="nom"> Nom :</label> <input type="text" id="nom"
name="nom" />
</p>
<input type="submit" name="editer" value="editer" />
</form></td>
</tr>
</c:forEach>

还有我的servlet:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
BddInsa listU = new BddInsa();
request.setAttribute("utilisateur", listU.recupererList());
this.getServletContext().getRequestDispatcher("/WEB-INF/bddinsa.jsp").forward(request, response);

}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {      
Utilisateur utilisateurs = new Utilisateur();
utilisateurs.setNom(request.getParameter("nom"));
utilisateurs.setPrenom(request.getParameter("prenom"));     
utilisateurs.setId(request.getParameter("id"));             
System.out.println(utilisateurs.getPrenom());
System.out.println(utilisateurs.getNom());
System.out.println(utilisateurs.getId());
BddInsa listU = new BddInsa();
listU.Editer(utilisateurs);     
request.setAttribute("utilisateurs", listU.recupererList());
this.getServletContext().getRequestDispatcher("/WEB-INF/bddinsa.jsp").forward(request, response);
}

}

当我试图查看id 的值时,我得到NULL

谢谢你的帮助!

请尝试只使用一个open和一个close表单标记好吗?我认为你的问题是因为你有两个<form method="post" action="ServBddInsa">。所以提交按钮在第二个表单上。在这种情况下,第一个表单的隐藏字段不会被考虑,也不会被发送。

最新更新