2014-02-17 81 views
1

我有一个包含radio groupscheckboxe groups的表单,每个checkbox group/radio group都有一个唯一的名称。获取复选框组的值

在我的Servlet我试图获得所有的检查值为那些radio groupscheckbox groups

PrintWriter out = response.getWriter(); 
Enumeration<String> requestParameters = request.getParameterNames(); 

while (requestParameters.hasMoreElements()) { 
    String paramName = (String) requestParameters.nextElement(); 
    out.println("Request Paramter Name: " + paramName 
       + ", Value - " + request.getParameter(paramName)); 
} 

当我选择在checkbox groupcheckboxs我只得到一个值。

例如,我有这样的checkbox group

<ul class="data-list-2">   
    <li> 
     <div class="icheckbox_square-aero"> 
      <input style="position: absolute; opacity: 0;" name="question_1" class="required" value="Mise en page d’un texte" type="checkbox"> 
     </div> 
     <label>Mise en page d’un texte</label> 
    </li> 

    <li> 
     <div class="icheckbox_square-aero"> 
      <input style="position: absolute; opacity: 0;" name="question_1" class="required" value="Compilation d’un texte" type="checkbox"> 
     </div> 
     <label>Compilation d’un texte</label> 
    </li> 

    <li> 
     <div class="icheckbox_square-aero"> 
      <input style="position: absolute; opacity: 0;" name="question_1" class="required" value="Présentation d’un texte sous forme de diaporama" type="checkbox"> 
     </div> 
     <label>Présentation d’un texte sous forme de diaporama</label> 
    </li> 

    <li> 
     <div class="icheckbox_square-aero"> 
      <input style="position: absolute; opacity: 0;" name="question_1" class="required" value="Edition d’un texte" type="checkbox"> 
     </div> 
     <label>Edition d’un texte</label> 
    </li> 
</ul> 

而且我查了最后三个checkboxs,我只得到一个值,如下所示:

请求放慢参数名称:question_1,价值 - 汇编d'texte

我对此搜索了一下,我发现我必须添加一个[]每个checkbox group,但名称后,当我试过了,这是我得到了什么:

请求放慢参数名称:question_1 [],值 - 编译科特迪瓦联合国texte

我怎样才能解决这个 ?

回答

1

在窗体中检查多个复选框将为您提供字符串数组形式的值。您必须使用request.getParameterValues()才能获取您在字符串数组中选择的所有值。

你的样本可能是这样的:

String[] questions = request.getParameterValues("question_1"); 
for(int i=0;i<questions.length;i++){ 
out.println(questions[i]); 
}