我想自定义面部信息的演示文稿。
为此,
<h:inputText id="name" required="true" />
验证失败时,它将显示在
中<h:message for="name" />
但是,我想自定义演示文稿调用JS,如下所示:
<div class="notification"></div>
function showNotification(msg){
$(".notification").html(msg);
$(".notification").fadeIn(1000, function(){
timeout = setTimeout(function(){
$(".notification").fadeOut(1000);
}, 5000);
});
}
我怎样才能做到这一点?
答案 0 :(得分:0)
您可以使用FacesContext#getMessageList()
来获取视图中的消息,如果需要,可以使用特定客户端ID的消息。您可以在ui:repeat
中迭代它们。每个项目都是FacesMessage
,有几个吸气剂。您可以使用<h:outputText escape="false">
所以,简而言之:
<ui:repeat value="#{facesContext.messageList('form:name')}" var="message">
<div><h:outputText value="#{message.summary}" escape="false" /></div>
</ui:repeat>
(在上面的示例中,我假设您的表单有id="form"
)
或者,如果HTML帮助链接实际不是消息的一部分,那么:
<ui:repeat value="#{facesContext.messageList('form:name')}" var="message">
<div>#{message.summary} <a href="help.xhtml">help</a></div>
</ui:repeat>