JSP向Servlet傳遞陣列引數
阿新 • • 發佈:2019-01-24
今天需要做一個多選刪除功能,需要從JSP中獲取已勾選的多選框的值,傳遞到Servlet中進行刪除操作。
<input type="checkbox" name="checkProduct" value="${product.pid}"> <input type="checkbox" name="checkProduct" value="${product.pid}"> <input type="checkbox" name="checkProduct" value="${product.pid}"> <input type="checkbox" name="checkProduct" value="${product.pid}"> <button type="button" id="delete" name="delete" value="刪除" class="button_add" onclick="delCheckProduct()">刪除</button>
<script type="text/javascript"> function delCheckProduct() { //獲取多選框的選中狀態 product = document.getElementsByName("checkProduct"); checkProduct = []; for(k in product){ if (product[k].checked){ checkProduct.push(product[k].value); } } //alert(checkProduct); //刪除 var isDel = confirm("確認刪除嗎?"); if (isDel){ //將checkProduct陣列當做引數傳遞到servlet window.location.href = "${pageContext.request.contextPath}/adminDelProductByChecked?checkProduct="+checkProduct; } } </script>
在Servlet中接收傳遞過來的值:
String checkProduct = request.getParameter("checkProduct"); // System.out.println(checkProduct); String uid[] = checkProduct.split(","); AdminDelProductByCheckedService service = new AdminDelProductByCheckedService(); try { service.delProductByChecked(uid); } catch (SQLException e) { e.printStackTrace(); } for (int i = 0; i < uid.length; i++){ System.out.println(uid[i]); } }