我试图在<s:if>
代码中使用Struts 2检查List是否包含特定元素?
<display:table class="noheader-border" id="data" name="lstAttendance" sort="list"
uid="row" htmlId="sources" export="false">
<display:column style="width:150px">
<s:property value="%{#attr.row.worker.workerName}" />
</display:column>
<display:column style="width:10px;weight:bold;">:</display:column>
<s:if test="lstSalaryDefinedWorkerId.contains(%{#attr.row.workerId})">
...
</s:if>
...
答案 0 :(得分:7)
我猜你可以使用OGNL语法来做到这一点。例如,我的动作类中有一个列表和一个属性,如:
private List test;
private String p = "a1";
// And their getters and setters
public String execute() throws Exception {
test = new ArrayList();
test.add("a");
test.add("b");
test.add("c");
test.add("d");
test.add("e");
return SUCCESS;
}
我需要在JSP页面中执行以下操作
<s:if test="%{p in test}">
Inside If block
</s:if>
<s:else>
Inside Else block
</s:else>
有关详细信息,请参阅Struts 2 OGNL文档: