Двумерный массив с тегом c: foreach jstl - PullRequest
2 голосов
/ 31 мая 2011

Я использую двумерный массив в двух встроенных JSTL <c:forEach>:

<select multiple size="30">
    <c:forEach var="uri" items="${defaultResult}" varStatus="iterator">
        <c:forEach var="cate" items="${defaultResult[iterator.index]}">
         <option value="${defaultResult[iterator.index][0]}"> ${cate}[1]</option>
        </c:forEach> 
    </c:forEach>
</select>

, но индексы, похоже, не работают, например, значения, возвращаемые ${cate}[1], являются всеми значениямилюбого измерения, за которым следует [1]

Если у вас есть идея решить мою проблему, это будет полезно.

Ответы [ 2 ]

5 голосов
/ 31 мая 2011

Это должно идти внутри выражения, а не снаружи.

${cate[1]}

Кстати, почему бы вам просто не получить доступ к var первого цикла?

<c:forEach var="uri" items="${defaultResult}">
    <c:forEach var="cate" items="${uri}">
        <option value="${uri[0]}">${cate[1]}</option>
    </c:forEach> 
</c:forEach>
1 голос
/ 07 декабря 2012

у меня сработало:

.java:

private int[][] childAges; // [room][child] = age
.....

.jsp:

<c:forEach var="childAge" items="${childAges}" >
    <c:forEach var="age" items="${childAge}" >
        ${age}
    </c:forEach>
</c:forEach>
...