2017-02-22 97 views
0

У меня есть форма, где имя на входе является:Как я могу читать из форм сервлета входов с именем = «продукт []»

<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> 

мне интересно, если я могу читать эти значения из моего сервлета .. Есть ли способ итерации через все входы product[] и description[]?

Я попытался String[] description = request.getParameterValues("description[]"); и

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

но не читать значения ..

+0

Форма имеет кнопку добавления, поэтому создает аналогичные входы .. Мне было интересно, работает ли это до того, как я попытаюсь отредактировать функцию кнопки добавления. – yaylitzis

+0

Потому что имя параметра не 'description', а' description [] '. То есть вы должны использовать 'String [] description = request.getParameterValues ​​(" description [] ");'. –

+0

@JozefChocholacek Это не работает. – yaylitzis

ответ

0

После @JozefChocholacek комментарий, который я нашел, где проблема была. В форме ввода был атрибут disabled. Я удалил, а затем

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

работал просто отлично.

-1

Как вы написали name="description [ ]", так что вы должны получить значение/значения только этим именем.

Так что ваше заявление должно быть:

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

Пожалуйста, подумайте о форматировании ответа во время публикации. –