【发布时间】:2015-03-10 00:52:20
【问题描述】:
我有一个带有 primefaces 的 JSF 页面,我想将 p:messages 用于输入验证的消息,并将 Growl 元素用于通知、错误等其余内容...
目前我有一个带有属性的咆哮,我正在发送带有这个属性的通知。
问题是我不知道我必须在 p:messages 组件中放入哪个 for 属性。如果我将其保留为 null,则通知消息将显示在 Growl 和 p:messages 中。
在这里你可以看到我的 JSF 示例。
<p:growl id="growlNotifyNewReg" for="growlNotificationsNewRegister"
showSummary="true"
showDetail="true"
autoUpdate="true"/>
<h:outputText value="Validado"/>
<p:selectBooleanCheckbox id="checkValidado" value="#{}" required="true"/>
<h:outputText value="Temperatura (ºC)"/>
<p:inputText id="Temperatura" value="#{}" required="true">
<f:validateDoubleRange minimum="-50" maximum="60" />
<f:convertNumber maxFractionDigits="1" />
</p:inputText>
<!-- Other inputs... -->
<p:messages showSummary="true" showDetail="true" redisplay="false"/>
当我想发送通知时,我会这样做。
FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_INFO, "summary", "details");
FacesContext.getCurrentInstance().addMessage("growlNotificationsNewRegister", facesMsg);
此代码将消息发送到 Growl 组件,但也发送到消息组件,因为它没有 for 属性。我想知道我必须在消息组件中放入哪个属性才能仅显示表单的验证消息。
如您所见,我将 redisplay 属性设置为 false。我可以在 p:messages 的 for 属性中放置多个 id 吗?
【问题讨论】:
-
请发布您的代码。
-
我的帖子更新了
标签: jsf jsf-2 primefaces