很抱歉,如果我的问题不明确。让我解释一下 - 我有两个列表,model.List1& model.List2 不等大小。但是,我仍然需要以这样的方式显示model.List2,列表元素出现在 Territory 列下。如何合并这两个列表?我不知何故需要在标有** **
的块内迭代List2编辑: 如您所见,列表1有五个条目,而列表2只有3个条目。如果我在我的第一个列表中迭代我的第二个列表,对于List1的每次迭代,我将获得所有3个区域(请参阅SEC1)。这不是我想要的......
<table>
<thead>
**<tr>**
<th>User</th>
<th>Title</th>
<th>Role</th>
<th>Territory</th>
**</tr>**
</thead>
<tbody>
<c:forEach items="${model.List1}" var="list">
<tr>
<td>${list.name} </td>
<td>${list.title} </td>
<td>${list.role} </td>
</tr>
</c:forEach>
<c:forEach items="${model.List2}" var="terr">
<td>${terr}</td>
</c:forEach>
</tbody>
</table>
当前输出:
User Title Role Territory
user1 Lead Lead
Territory1
期望输出:
User Title Role Territory
user1 Lead Lead Territory1
user2 Lead2 Lead2 Territory2
user3 Lead3 Lead3 Territory3
User4 Lead4 Lead4
User5 Lead5 Lead5
SEC1 - 这不是我想要的
User Title Role Territory
user1 Lead Lead Territory1 Territory2 Territory3
user2 Lead2 Lead2 Territory1 Territory2 Territory3
user3 Lead3 Lead3 Territory1 Territory2 Territory3
答案 0 :(得分:0)
你可以这样做
<table>
<c:forEach items="${ list1 }" var="item" varStatus="status1">
<tr>
<td>${ item.name }</td>
<td>
<c:if test="${ status1.index lt fn:length(list2) }">
${ list2[status1.index].name }
</c:if>
</td>
</tr>
</c:forEach>
</table>
c:if
检查,如果第二个列表足够大。