簡體   English   中英

如何從 java ee 中的按鈕單擊列表中添加特定項目?

[英]How to add specific item from list on button click in java ee?

我最近開始學習 java ee,我想做一個小商店應用程序。 在下面的代碼中,我在列表中添加了一些文章,我可以在我的 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>中添加隱藏字段,以便單擊按鈕表單會將您的nameprice值帶到 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 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM