在p:dialog中无法显示p:message

4
在 p:dialog 中的 addCommodityDlg,我有一些文本字段。我在尝试为这些字段显示验证信息,但是未能实现。
代码:
    <p:dialog id="addCommodityDlg" widgetVar="createCommodity"
                   width="625" height="400" modal="true" header="Add Items">  

          <h:panelGrid columns="3">
             <h:outputLabel value="ID" />
             <h:inputText value="#{deliveryOderController.selectedCommodity.commodityId}" 
                          id="commodityIdTF" required="true"  />
             <p:message for="commodityIdTF"/>

             <h:outputLabel value="Name"/>
             <h:inputText value="#{deliveryOderController.selectedCommodity.commodityName}"
                          id="commodityNameTF"/>                                                                                   
             <p:message for="commodityNameTF"/>
          </h:panelGrid>

          <p:commandLink  styleClass="saveButtonLnk"  
                          actionListener="#{deliveryOderController.saveItems}" 
                          update=":createDOForm:transportUnitPnl">                    
         </p:commandLink>
  </p:dialog>  

如何在p:dialog中显示验证消息?
1个回答

5

为那些p:message组件分配一个ID,并将它们放入您的p:commandLink更新中:

<p:dialog id="addCommodityDlg" widgetVar="createCommodity"
                   width="625" height="400" modal="true" header="Add Items">  
             ...
             <p:message id="commodityIdTFMessage" for="commodityIdTF"/>
             ...
             <p:message for="commodityNameTF" id="commodityNameTFMessage" />
          </h:panelGrid>
          <p:commandLink  styleClass="saveButtonLnk"  
                          actionListener="#{deliveryOderController.saveItems}" 
                          update=":createDOForm:transportUnitPnl commodityIdTFMessage commodityNameTFMessage">                    
         </p:commandLink>
</p:dialog>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接