当前位置 : 主页 > 编程语言 > java >

JSP向Servlet传递数组参数

来源:互联网 收集:自由互联 发布时间:2021-06-25
今天需要做一个多选删除功能,需要从JSP中获取已勾选的多选框的值,传递到Servlet中进行删除操作。 input type="checkbox" name="checkProduct" value="${product.pid}"input type="checkbox" name="checkProduct"

今天需要做一个多选删除功能,需要从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]);
        }
    }
上一篇:检查属性存在于JSP中
下一篇:JSP面试题
网友评论