0

我有一个要传递给 JSTL 的列表。

<c:forEach items="${actionBean.excessList.newActiveCustomerExcessUIList}"                   var="customerExcess">
 <c:set var="clientName" value="${customerExcess.clientName}"                       scope="page"></c:set>
<c:set var="ultimateParent" value="${customerExcess.ultimateParent}"
                        scope="page"></c:set>
 <c:forEach items="${customerExcess.excessList}" var="excess">
    <tr>
    <td><c:out value="${clientName}"></c:out></td>
    <td><c:out value="${ultimateParent}"></c:out></td>
    <td><c:out value="${excess.excessDa }"></c:out></td>

输出页面是 在此处输入图像描述

列表中的值为

[CustomerExcessUIBean [clientName=Golden Eagle Retail Grp Ltd,cif=1,ultimateParent=HSBC Holdings Plc,excessList=[ExcessUIBean [notifyDaHolder=true,excessId=1,excessDa=DA6,status=New Passive,product=Vostro,measure=Primary ,货币=美元,limitAtExcess=5000000,excessAmount=95515540.48,excessDate=2012 年 10 月 2 日,maxRiskAmount=95515540.48,openDate=2012 年 10 月 2 日,daValueForUser=9,maxRiskDate=2012 年 10 月 2 日],ExcessUIBean [notifyDaHolder=true,excessId=7, extraDa=DA6,状态=新被动,产品=Vostro,度量=主要,货币=美元,limitAtExcess=5000000,excessAmount=95515540.48,excessDate=2012 年 10 月 2 日,maxRiskAmount=95515540.48,openDate=2012 年 10 月 2 日,daValueForUser=9,maxRiskDate = 2012 年 10 月 2 日],ExcessUIBean [notifyDaHolder=true,excessId=9,excessDa=DA7,status=New Passive,product=Trading,measure=Settlement,currency=MZM,limitAtExcess=0,extraAmount=2586033000,excessDate=2012 年 10 月 2 日,maxRiskAmount=2586033000,openDate=2013 年 4 月 5 日,daValueForUser=9,maxRiskDate=2012 年 10 月 2 日]]],CustomerExcessUIBean [clientName=Citibank Na Karachi Br,cif=4,ultimateParent=HSBC Holdings Plc,excessList=[ExcessUIBean [notifyDaHolder=true,excessId=4,excessDa=-,status=New Passive,product=Vostro,measure=Primary,货币=USD,limitAtExcess=5000000,excessAmount=95515540.48,excessDate=2012年10月2日, maxRiskAmount=95515540.48, openDate=02 Oct 2012, daValueForUser=9, maxRiskDate=02 Oct 2012]]]]status=New Passive,product=Vostro,measure=Primary,currency=USD,limitAtExcess=5000000,excessAmount=95515540.48,excessDate=2012 年 10 月 2 日,maxRiskAmount=95515540.48,openDate=2012 年 10 月 2 日,daValueForUser=9,maxRiskDate=2012 年 10 月 2 日]]]]status=New Passive,product=Vostro,measure=Primary,currency=USD,limitAtExcess=5000000,excessAmount=95515540.48,excessDate=2012 年 10 月 2 日,maxRiskAmount=95515540.48,openDate=2012 年 10 月 2 日,daValueForUser=9,maxRiskDate=2012 年 10 月 2 日]]]]

问题是当客户端名称与上述相同时,该字段应显示为空..好像按客户端名称分组一样。

4

3 回答 3

0

如果我正确理解了您的问题(如果我没有正确理解您的问题,我深表歉意),您想要做的是在内部循环中(循环结束${customerExcess.excessList}的那个),对于第一次迭代,您只想打印出客户名称。对于其他迭代,您需要一个空白<td>. 如果是这种情况,那么您可以使用循环中的状态变量和if如下语句来处理它:

<c:forEach items="${customerExcess.excessList}" var="excess" varStatus="status">
  <tr>
    <td>
      <c:if test="${stat.first}">
        <c:out value="${clientName}"></c:out>
      </c:if>        
    </td>
    <td><c:out value="${ultimateParent}"></c:out></td>
    <td><c:out value="${excess.excessDa }"></c:out></td>
于 2013-05-08T11:55:19.847 回答
0

尝试像这样放置先前的元素

<c:set var="clientName" value="${clientName}" />'

然后将前一个元素与当前元素进行比较。

看这里

于 2013-05-08T11:57:55.303 回答
0

我想在后端创建平面对象结构,例如clientNameclientNameDisplayultimateParent。然后用你需要的数据填充这个 bean,比如 unique clientNameDisplay。毕竟,您可以显示一个ArrayList而不是嵌套列表。

于 2013-05-08T23:46:04.520 回答