1

我正在尝试读取放置在 ap: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>
4

1 回答 1

2

的 HTML 表示<p:notificationBar>将被重新定位到 HTML DOM 树中的所需位置,并且在您的特定情况下将不再以 HTML 形式结束。

您需要将 to<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>  
于 2012-12-13T15:15:45.613 回答