突出显示无效输入,component.valid 始终有效但绑定有效

highlight invalid input, component.valid always valid but binding works

我刚刚了解到 component.valid EL 表达式,但遇到了一些问题。当我使用 component.valid 而不是绑定组件并使用绑定名称时,我的组件始终有效:

这个有效:

    <h:inputText required="true" binding="#{textIn}" value="#{testBean.number}" style="#{textIn.valid ? 'border:1px solid green;' : 'border:1px solid red;'}">
        <f:validateDoubleRange maximum="3"></f:validateDoubleRange>
    </h:inputText>

没有绑定和使用 component.valid 组件总是有效的:

    <h:inputText required="true" value="#{testBean.number}" style="#{component.valid ? 'border:1px solid green;' : 'border:1px solid red;'}">
        <f:validateDoubleRange maximum="3"></f:validateDoubleRange>
    </h:inputText>

这有什么问题吗?这对我来说真的是一件大事,因为我必须再输入一个属性,而且我只能输入那么多..

提交后更新或呈现整个 h:form
这将重新评估绑定到 style 属性的 el 表达式。