jsp对同名checkbox的处理

jsp开发中经常会遇到同名的checkbox的问题,比如全选批量删除,用户多选提交等等。下面举个注册的例子。

代码如下:

 <body>
  <div style="text-align:left">
   <form action="request2.jsp" method="post" name="loginForm">
    帐号:<input type="text" name="username" id="username" class="username"><span id="uMsg" style="font-size:14px;color:red"></span><br>
    密码:<input type="password" name="password" id="pwd" class="pwd"><span id="pMsg" style="font-size:14px;color:red"></span><br>
    爱好:<input type="checkbox" value="电影" name="ah">电影,<input type="checkbox" name="ah" value="看书">看书,<input type="checkbox" name="ah" value="上网">上网,<input type="checkbox" name="ah" value="游戏">游戏<br>
    <input type="button"  class="btn" value="注册" οnclick="return checkSubmit()"/>
    <input type="reset" class="btn" value="重写">
    </form>
   </div>
  </body>

从代码中我们可以看出,“爱好”使用的是checkbox而且名称都为“ah”,那么对于jsp来说在后台如何取到爱好的值呢?显然使用request.getParameter("ah")只能取到一个值,不能满足要求,那么有没有别的方法可以实现这一功能呢?答案是肯定的,jsp中提供了getParameterValues("")方法就可以获取同名表单的所有值。跟getParameter("")不同的是此方法返回类型是String[],里面存放的值就是我们选择的值。

JSP处理页面:request2.jsp

<body>
    <% 
   
    //获取表单或者url传递过来的值
    String username = request.getParameter("username");
    out.println("用户名称:"+ username+"<br>");
    //getParameterValues方法用来获取表单名称一样但有多个值:比如:checkbox
    String[] ah = request.getParameterValues("ah");
    out.println("爱好:");
    for(String a:ah){
    	out.println(a+"  ");
    } 
   
    %>
   
  </body>


结果运行结果如下图:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值