在手风琴面板内验证对话会影响手风琴面板功能

时间:2013-04-25 09:18:51

标签: jsf-2 primefaces

我在手风琴里面有一个带有命令按钮的对话框。如果单击命令按钮,对话框将打开,内部是输入文本组件。我做了一个验证说,名字不应该是空的。

我面临的问题是,即使我没有在命令按钮上显示输入文本的验证消息,也表示它不应为空。每次出现此应用程序并且应用程序挂起。我尝试过设置dynamic =“false”,但这两个都不起作用。

我使用的是素面3.5和jsf2

<p:accordionPanel dynamic="true" id="editSeAccordion" >
    <p:tab id="Edit3" title="myEdit">
        <p:dialog widgetVar="addSAPDialog" id="sapDialog" modal="true" minimizable="false"
            style="position:fixed;" closable="true" position="350,250" maximizable="false" >

            <p:panel style="border:none;background:#F0F0F0;margin-top:-10px;">
                <h:panelGrid columns="2">
                    <h:outputText value="msg.EditService_s}" styleClass="label" />  
                    <p:inputText label="name" styleClass="textfield" 
                        value="#{serviceManagedBean.sapBean.name}" required="true" 
                        requiredMessage="name is compulsary"/>

                </h:panelGrid> 
                <p:commandButton value="Cancel" styleClass="btn-secondary" 
                    style="float:right;margin-top:20px;" onclick="addSAPDialog.hide();"/>
                <p:commandButton value="Ok" styleClass="btn-primary" ajax="true"  
                    actionListener="#{serviceManagedBean.createAddSapPanel}"  
                    oncomplete="handleDialogSubmit(xhr, status, args)"/>

            </p:panel>
        </p:dialog>

1 个答案:

答案 0 :(得分:0)

尝试在对话框中使用单独的h:form元素作为输入。因为如果单击折叠选项卡,则无论使用部分过程还是部分渲染,都会验证所需的输入。