Подтвердить что ты не робот

Как я могу конкатенировать строку в цикле в JSTL/JSP?

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
  <c:set var="myVar" value="<c:out var="myVar" />" />
</c:forEach>

Я хочу объединить значения currentItem.myVar и вывести его в конце цикла, проблема в том, что я не могу понять, как это сделать...

(желательно не использовать Java)

4b9b3361

Ответ 1

Возможно, это сработает?

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
  <c:set var="myVar" value="${stat.first ? '' : myVar} ${currentItem}" />
</c:forEach>

Ответ 2

Вы используете JSTL 2.0 правильно? Вам не нужно ставить <c:out/> вокруг всех переменных. Вы пробовали что-то вроде этого?

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
  <c:set var="myVar" value="${myVar}${currentItem}" />
</c:forEach>

Изменить: Избито выше

Ответ 3

Является ли JSTL join(), что вы искали?

<c:set var="myVar" value="${fn:join(myParams.items, ' ')}" />

Ответ 4

определить переменную String с использованием тегов JSP

<%!
String test = new String();
%>

то обратитесь к этой переменной в вашем цикле как

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
test+= whaterver_value
</c:forEach>