我有一个bean列表,每个bean都有一个属性,它本身就是一个电子邮件地址列表。
<c:forEach items="${upcomingSchedule}" var="conf"> <div class='scheduled' title="${conf.subject}" id="scheduled<c:out value="${conf.id}"/>"> ... </div> </c:forEach>
这样<div>就为List中的每个bean 渲染了一个。
<div>
对于子列表,我想做的是将列表中的每个条目连接起来以形成单个字符串,并将其显示为<div>的title属性的一部分。为什么?因为我们使用的是javascript库(mootools),将其<div>转换为浮动工具提示,而该库将title变成了工具提示的文本。
title
因此,如果${conf.subject}是“ Subject”,最终我希望其中title的<div>“ Subject:blah @ blah.com,blah2 @ blah2.com等”,其中包含子列表的所有电子邮件地址。
${conf.subject}
如何使用JSP EL做到这一点?我试图避免将scriptlet块放入jsp文件中。
想出了一种有点肮脏的方式来做到这一点:
<c:forEach items="${upcomingSchedule}" var="conf"> <c:set var="title" value="${conf.subject}: "/> <c:forEach items="${conf.invitees}" var="invitee"> <c:set var="title" value="${title} ${invitee}, "/> </c:forEach> <div class='scheduled' title="${title}" id="scheduled<c:out value="${conf.id}"/>"> ... </div> </c:forEach>
我只是<c:set>重复使用它自己的值来附加/连接字符串。
<c:set>