Primefaces在p:tabView选项卡上提交表单更改

时间:2016-10-10 13:14:32

标签: forms jsf primefaces jsf-2 tabview

我使用在WebSphere Application Server V8.5.5上运行的primefaces 6.0版创建了一个巨大的JSF应用程序。我想避免使用嵌套表单,因此我的p:tabView不包含在表单中,但每个选项卡都有自己的表单。我的标签视图的来源如下所示:

      <p:tabView activeIndex="#{tabViewBean.selectedTab}" id="tabView" dynamic="true" cache="false" widgetVar="tabViewWidget">
        <p:ajax event="tabChange" listener="#{tabViewBean.handleTabChange}" update=":tabView" />
        <p:tab id="tab1" title="First tab">
            <h:form id="FirstTabForm">
                <ui:include src="/views/test/firstTabTab.xhtml"/>
            </h:form>
        </p:tab>
        <p:tab id="tab2" title="Drugi tab">
            <h:form id="SecondTabForm">
                <ui:include src="/views/test/secondTab.xhtml"/>
            </h:form>
        </p:tab>

      ... more tabs ...

    </p:tabView>

有没有办法在不在其中单击commandButton的情况下在当前选项卡中提交表单。我想在标签更改事件上实现这一点。

每个标签都有15-20个输入字段,我不想在每次更改值时使用ajax,因为它会显着减慢我的应用程序。

1 个答案:

答案 0 :(得分:1)

我认为您可以在process事件中使用tabChange属性和动态选择器。

您可以在此处看到它:Ajax Framework - Partial Process