如何从 name= 的 servlet 表单输入中读取 "product[]"



我有一个表格,其中输入的名称为:

<form>
<div class="form-group" >
    <div class="col-md-1">                                      
        <input type="text"  class="form-control"  name="product[]"/>        
    </div>
    <div class="col-md-4">
        <input type="text" class="form-control" name="description[]"/>
    </div>
</div>
<div class="form-group" >
    <div class="col-md-1">                                      
        <input type="text"  class="form-control"  name="product[]"/>        
    </div>
    <div class="col-md-4">
        <input type="text" class="form-control" name="description[]"/>
    </div>
</div>
<div class="form-group" >
    <div class="col-md-1">                                      
        <input type="text"  class="form-control"  name="product[]"/>        
    </div>
    <div class="col-md-4">
        <input type="text" class="form-control" name="description[]"/>
    </div>
</div>
</form>

我想知道我是否可以从我的servlet中读取这些值。.是否有办法迭代所有输入product[]description[]

我尝试了String[] description = request.getParameterValues("description[]");

while(!StringUtils.isBlank(request.getParameter("description[]"))){
   String description = request.getParameter("description[]");
   System.out.println("desct = " + description);
}

但没有读取值。

java servlet-获取具有相同名称的参数

所以String[] description = request.getParameterValues("description");可能会起作用!没有名称中的[]

@jozefchocholacek评论后,我发现问题所在。输入形式有属性disabled。我删除了,然后

while(!StringUtils.isBlank(request.getParameter("description[]"))){
   String description = request.getParameter("description[]");
   System.out.println("desct = " + description);
}

工作正常。

正如您所写的name="description [ ]"一样,您应该仅通过此名称获得值/值。

,您的语句应该是:

String[] description = request.getParameterValues("description[ ]");

最新更新