В элементах HTML пробелы являются специальным символом-разделителем для таких атрибутов элемента HTML, как type
, value
и т. Д.
При печати значений атрибутов без двойных кавычек, как следует
<input type="text" value=<%=affectedBean.getPartDescription().get(i) %> />
тогда сгенерированный HTML заканчивается как
<input type="text" value=BK SLOPE CONTROLLER />
Все части за пределами пространства интерпретируются как другие атрибуты. Немного интеллектуальная подсветка синтаксиса должна уже включить свет над вашей головой. Окрашено по-разному!
Итак, вам нужно поставить кавычки вокруг значения
<input type="text" value="<%=affectedBean.getPartDescription().get(i) %>" />
, чтобы сгенерированный HTML-код заканчивался как
<input type="text" value="BK SLOPE CONTROLLER" />
Не связано с конкретной проблемой, использование скриптлетов - не рекомендуется , вы должны предпочесть использовать taglibs / EL Предполагая, что вы указали affectedBean
в качестве атрибута запроса, сделайте так:
<c:forEach items="${affectedBean.partDescription}" var="partDescription">
<input type="text" value="${partDescription}" />
</c:forEach>