我正在尝试读取放在p:notificationBar中的inputText,但我只得到null作为它的输入。 jsf代码是:
<h:form>
<p:notificationBar position="top"
effect="slide"
styleClass="top"
id="notificationPanel"
widgetVar="bar" >
<h3>Subscribe</h3>
Add your email adress here
<h:panelGrid columns="3" cellspacing="20">
Email:
<p:inputText value="#{detailsBean.email}" />
<p:commandButton value="Submit" action="#{detailsBean.submitEmail}" onclick="bar.hide()"/>
</h:panelGrid>
</p:notificationBar>
</h:form>
答案 0 :(得分:2)
<p:notificationBar>
的HTML表示将重新定位到HTML DOM树中的所需位置,并且在您的特定情况下将不再以HTML格式结束。
您需要将<h:form>
移到<p:notificationBar>
。
<p:notificationBar position="top"
effect="slide"
styleClass="top"
id="notificationPanel"
widgetVar="bar" >
<h:form>
<h3>Subscribe</h3>
Add your email adress here
<h:panelGrid columns="3" cellspacing="20">
Email:
<p:inputText value="#{detailsBean.email}" />
<p:commandButton value="Submit" action="#{detailsBean.submitEmail}" onclick="bar.hide()"/>
</h:panelGrid>
</h:form>
</p:notificationBar>