2010-05-13 45 views
1

我想获取复选框的值,以便稍后在数据库中插入它们。 这是确定的是选中复选框将不会被发送到我的servlet但我cheking多个checkboxe返回只是第一个我'做这样的即时通讯我的JSP的时候有问题:如何从一组复选框中获取值?

<td><input type=checkbox id=\""+i+"\" name=cbo value=<%=object.getNom()+ object.getPrenom() %> /> <%=object.getNom()+object.getPrenom()%></td> 

并在该servlet如下:

String[] checkboxes = request.getParameterValues("cbo"); 
    System.out.println("operators checked are:" + checkboxes[i]); 

就像你看到我想获得所有的值检查。 但如果我检查多个只有第一个CB显示在我的servlet中。

想要帮助。

+1

这是一个数组教程:http://java.sun.com/docs/books/tutorial/java/nutsandbolts/arrays.html通过与多家开始在HTML/CSS非法途径元素的标识符。 – BalusC 2010-05-13 13:31:45

回答

3

request.getParameterValues()为请求中找到的同名多个参数返回值数组。

如果您的请求没有问题,那么我的意思是action?cbo=val1&cbo=val2&cbo=val3等,那么在将表单提交给您的servlet后,checkboxes应为["val1", "val2", "val3"]

首先检查您的请求。

还有一个问题:以下是循环,对不对?

System.out.println("operators checked are:" + checkboxes[i]); 
0

给出相同的id而不是动态的,点击调用javascript函数。在这里你会得到一个数组,如果你做了getElementByID()。 将此数组设置为隐藏的表单变量并在您的操作中访问它。

+1

这不是一个解决方案。这是一种解决方法。他发布的代码应该可以工作。他只是错误地访问了它。 – BalusC 2010-05-13 13:30:32