如何在 java ee 中单击按钮时从列表中添加特定项目?
How to add specific item from list on button click in java ee?
最近开始学习javaee,想做一个小店应用。
在下面的代码中,我在列表中添加了一些文章,我可以在 jsp.
上显示它们
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ArrayList<Artical> articals = Artical.getArticals();
request.setAttribute("articals", articals);
RequestDispatcher rd = request.getRequestDispatcher("home.jsp");
rd.forward(request, response);
}
这里是我展示文章和创建按钮的地方:
<body>
<h1>Welcome ${user.name}</h1>
<c:forEach var="artical" items="${articals}">
<ul>
<li>${artical.name}
<form action="addtocart" method="POST">
<button type="submit" name="button">Add to cart</button></form></li>
<li>${artical.price}</li>
</ul>
</c:forEach>
</body>
我想在单击“添加到购物车”按钮时将该商品添加到购物车(在我的例子中只是为了显示它们)。那么我的“addtocart”servlet 应该是什么样子呢?谢谢
您可以在您的 <form></form>
中添加隐藏字段,以便在单击您的按钮表单时会将您的 name
和 price
项目值带到 servlet 中,您可以在其中添加这些你的List
.即:
<c:forEach var="artical" items="${articals}">
<ul>
<li>${artical.name}
<form action="addtocart" method="POST">
<!--add below inputs-->
<input type="hidden" name="names" value="${artical.name}"/>
<input type="hidden" name="price" value="${artical.price}"/>
<button type="submit" name="button">Add to cart</button></form></li>
<li>${artical.price}</li>
</ul>
</c:forEach>
然后在您的 servlets doPost()
方法中使用 request.getParameter("..")
获取这些值,即:
String names= request.getParameter("names");
String price= request.getParameter("price");
//add in list and then add that list in sessions
最近开始学习javaee,想做一个小店应用。 在下面的代码中,我在列表中添加了一些文章,我可以在 jsp.
上显示它们 protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ArrayList<Artical> articals = Artical.getArticals();
request.setAttribute("articals", articals);
RequestDispatcher rd = request.getRequestDispatcher("home.jsp");
rd.forward(request, response);
}
这里是我展示文章和创建按钮的地方:
<body>
<h1>Welcome ${user.name}</h1>
<c:forEach var="artical" items="${articals}">
<ul>
<li>${artical.name}
<form action="addtocart" method="POST">
<button type="submit" name="button">Add to cart</button></form></li>
<li>${artical.price}</li>
</ul>
</c:forEach>
</body>
我想在单击“添加到购物车”按钮时将该商品添加到购物车(在我的例子中只是为了显示它们)。那么我的“addtocart”servlet 应该是什么样子呢?谢谢
您可以在您的 <form></form>
中添加隐藏字段,以便在单击您的按钮表单时会将您的 name
和 price
项目值带到 servlet 中,您可以在其中添加这些你的List
.即:
<c:forEach var="artical" items="${articals}">
<ul>
<li>${artical.name}
<form action="addtocart" method="POST">
<!--add below inputs-->
<input type="hidden" name="names" value="${artical.name}"/>
<input type="hidden" name="price" value="${artical.price}"/>
<button type="submit" name="button">Add to cart</button></form></li>
<li>${artical.price}</li>
</ul>
</c:forEach>
然后在您的 servlets doPost()
方法中使用 request.getParameter("..")
获取这些值,即:
String names= request.getParameter("names");
String price= request.getParameter("price");
//add in list and then add that list in sessions