有没有办法在JSP 2.0 / J2EE 1.4中使用延迟EL之类的东西?我们的想法是将测试传递给标记文件,并使其根据表达式的值在列表中显示(或不显示)。基本上,我想做这样的事情:
JSP:
<x:myTag items="${myCollection}" test="${item.visible}"/>
myTag.tag
<c:forEach var="item" items="${collection}">
<c:if test="${test}">
${item}
</c:if>
</c:forEach>
升级JSP容器不是一种选择。有什么想法吗?
更新
我尝试使用JSP片段执行此操作,但片段中的EL在JSP中评估一次,而不是在标记中每次迭代一次。
答案 0 :(得分:1)
您应该可以使用jsp fragments执行此操作。我相信它不会是你会欣赏的非常优雅的解决方案,但它确实允许表达式的执行延迟到标记内部。
编辑: 您可以使用“name-given”设置查看variable。
(我很乐意承认,我做了某事就像你2年前想要做的那样。我从那时起就没有触及过它。我记得我认为这很神秘了)