【问题标题】:clear dialog box JSF清除对话框 JSF
【发布时间】:2013-04-09 16:14:00
【问题描述】:

我尝试了很多方法,但都不起作用,我在对话框中有一个向导,当我提交表单并重新打开对话框时,我在最后的数据中找到了它,这是我的代码:

     <p:wizard id="wizForNewIssue" widgetVar="wizNewIsssue"
        flowListener="#{managedBeanProjects.onFlowProcess}"
        style="width:100%;">

        <p:tab id="personal" title="Details">
           <p:panel style="width:800px;height:200px">
              <h:messages errorClass="error" />
              <h:panelGrid id="new0" columns="3">
                                                    ........... 
                   </h:panelGrid>
              <f:facet name="footer">
                 <h:outputText value="Skip to last: " />
                 <h:selectBooleanCheckbox value="#{managedBeanProjects.skip}" />
              </f:facet>
           </p:panel>
        </p:tab>

        <p:tab id="version" title="Version Details">
           <p:panel style="width:800px;height:200px">
              ............
           </p:panel>
        </p:tab>

        <p:tab id="goConfirm" title="Confirmation">
           <p:panel style="width:800px;height:200px">

              <h:panelGrid id="final" columns="4">
                                                 .............                  
              </h:panelGrid>

              <f:facet name="footer">
                 <p:commandButton value="Submit"
                    update=":form1:growl :form1:dialogNewIssue "
                    actionListener="#{managedBeanProjects.newIssue}"
                    oncomplete="newDialog.hide()"  />
              </f:facet>
           </p:panel>
        </p:tab>
     </p:wizard>


  </p:dialog>

【问题讨论】:

  • 显示您打开对话框的方式。关键是您应该在打开对话框之前对对话框进行 ajax 更新,以便它反映在当前模型状态中(您当然应该自己事先清除)。
  • 这可能对你有帮助:primefaces.org/showcase/ui/resetInput.jsf
  • 对 BalusC :当我打开对话框时,我只调用 .show() 并且我使用对话框 id 进行了所有更新,我尝试使用 id 向导,但这不是解决方案。致 RongNk:我希望所有输入在提交按钮后都是干净的,并且还希望重定向到向导的第一个 TAB
  • "所有输入在提交后都是干净的": 你更新 bean 中的值。
  • "重定向到向导的第一个 TAB":您可以设置活动选项卡,索引从 bean 获取

标签: jsf primefaces


【解决方案1】:

Primefaces 向导具有“步骤”属性来设置“流程中当前步骤的 ID”,您可以设置要显示的选项卡的 ID:

<p:wizard step="#{managedBeanProjects.tabIndex}" id="wizForNewIssue" widgetVar="wizNewIsssue"
        flowListener="#{managedBeanProjects.onFlowProcess}"
        style="width:100%;">

豆子:

if(true){
tabIndex = "personal";
}

【讨论】:

    猜你喜欢
    • 2019-09-30
    • 1970-01-01
    • 2012-09-03
    • 2011-01-06
    • 1970-01-01
    • 2013-11-07
    • 1970-01-01
    • 2012-03-17
    • 2014-04-08
    相关资源
    最近更新 更多