4

私はこのようなことをしたい

<c:forEach var="item1" items="List1" var="item2" items="List2">
 <p> ${item1} ${item2}</p>
</c:forEach>

1 つの解決策は、両方のリストが同じサイズである場合、両方のリストを反復処理することです。

<c:forEach var="i" begin="0" end="$(fn:length(List1))">
 <p> <%= List1.get(i) %> <%= List2.get(i)%>  //wrong syntax 
</c:forEach>

これを達成する方法はありますか。

4

2 に答える 2

5

呼び出しvarStatus.indexて現在のラウンドのインデックスを取得し、それを 2 番目のリストのルックアップとして使用できます。ただし、 s の長さにList注意してください。そうしないと、 Exception がスローされます。2 つの最大値を持つ を設定しitemsます。List

<c:forEach var="element" items="${List1}" varStatus="status">
 <p>
  ${element}
  ${List2[status.index]}
</c:forEach>
  1. ドキュメンテーション
  2. JSPファイルでJavaコードを回避するには?
于 2013-07-25T06:45:54.250 に答える
0
Array is Frist List, and B is Second List and varStatus.index to get the index of the current round and then use it as a lookup for the second list.
<c:forEach var="Array" items="${A}" varStatus="status">
<c:out value="${A}","${B[status.index]}"}/>
</c:forEach>
于 2015-05-27T09:53:52.160 に答える