0

我正在使用 JSF 1.1 和 Tomahawk 和 Tomcat 6.0

<c:if test="${vo.type=1}">
    <t:commandLink action="#{Manager.openPatient}">
        <c:out value="${vo.patientId}"></c:out>
        <t:outputText value="#{vo.patientId}" />
        <f:param value="#{vo.id}" name="patientId"/>
    </t:commandLink>
</c:if>

我正在尝试根据类型添加条件。如果vo.type = 1确实打电话给病人。如果vo.type = 2确实调用帐户等。

似乎该<c:if>标签不起作用。解决此问题的任何想法或指示将不胜感激。

4

1 回答 1

3

就像在普通 Java 中一样,您需要与 进行比较==,而不是与=.

<c:if test="${vo.type == 1}">

与具体问题无关,如果使用纯 JSF 可以实现相同的功能,那么您应该更喜欢使用 JSTL。在这种特殊情况下,您可以只使用rendered每个 JSF HTML 组件都支持的属性。摆脱<c:if>(和多余的<c:out>)并更改<t:commandLink>如下:

<t:commandLink action="#{Manager.openPatient}" rendered="#{vo.type == 1}">
    <t:outputText value="#{vo.patientId}" />
    <f:param value="#{vo.id}" name="patientId"/>
</t:commandLink>
于 2011-02-25T02:47:28.533 回答