【问题标题】:Conditional style in JSF when validation has failed in general验证通常失败时 JSF 中的条件样式
【发布时间】:2012-09-25 12:18:24
【问题描述】:

我有 h:messages 来显示错误消息,并且有一个组件我希望在发生验证错误时更改其样式(如果任何组件有验证错误或呈现任何验证消息,则更改此样式特定组件)。

如果组件出现验证错误,我知道如何更改样式: JSF : Better way to check for existence of <h:message for="id"/>

但我想要一种更通用的方法,如果表单中的任何组件无效,或者换句话说,任何验证消息都被呈现,则更改样式。

请告知如何实现。

【问题讨论】:

    标签: jsf jsf-2


    【解决方案1】:

    您可以使用FacesContext#isValidationFailed() 来检查一般验证是否失败。

    <h:outputText ... styleClass="#{facesContext.validationFailed ? 'fail' : 'success'}" />
    

    或者,您可以使用FacesContext#getMessageList() 检查是否有任何面孔消息。这并不一定表示一般的验证失败,也可以是在 action 方法中添加的全局/成功消息。

    <h:outputText ... styleClass="#{not empty facesContext.messageList ? 'hasmessage' : 'nomessage'}" />
    

    【讨论】:

      猜你喜欢
      • 2012-06-18
      • 1970-01-01
      • 2011-10-30
      • 1970-01-01
      • 1970-01-01
      • 2013-02-27
      • 2010-09-16
      • 1970-01-01
      相关资源
      最近更新 更多