0

我正在研究 JSF primefaces,因为我在提交表单时遇到问题

问题描述 :

我正在使用primefaces tapView面板,因为每次点击我都有一组带有submitButton的输入字段,我设置所有字段都是强制性的,如果我输入值一个点击(tap1)字段并提供提交意味着动作没有被触发,原因是因为我将其他 tap(tap2)字段设置为强制,所以表单没有提交。

我的 JSF 代码:

<h:form>
<p:tabView  >
<p:tab id="tap1" title="Tap1">

    <h:panelGrid>
        <h:panelGroup id="ip_leave">
    <h:outputText value="From"  styleClass="op1" style="margin-right:10px;" />
    <p:calendar pattern="dd/MM/yyyy" effect="drop" value="#{leavehistory.leaveFrom}" required="true" size="10"/>
    <h:outputText value="To"  styleClass="op1" style="margin-left:40px;margin-right:10px;"/>
    <p:calendar pattern="dd/MM/yyyy" effect="drop" value="#{leavehistory.leaveTo}" required="true" size="10"/>
    <p:commandButton value="Get"  actionListener="#{leavehistory.submitLeaveHistory}" update="tap1" style="margin-left:40px;" />
    </h:panelGroup>
    </h:panelGrid>
</p:tab>
<p:tab id="tap2" title="Tap2">
    <h:panelGrid id="ip_reject">
            <h:panelGroup >
            <h:outputText value="From"  styleClass="op1" style="margin-right:10px;" />
            <p:calendar pattern="dd/MM/yyyy" effect="drop" value="#{leavehistory.rDateFrom}" required="true" size="10"/>
            <h:outputText value="To"  styleClass="op1" style="margin-left:40px;margin-right:10px;"/>
            <p:calendar pattern="dd/MM/yyyy" effect="drop" value="#{leavehistory.rDateTo}" required="true" size="10"/>
            <p:commandButton value="Get"  actionListener="#{leavehistory.submitRejectedLeaveHistory}" update="tap2" style="margin-left:40px;" />
            </h:panelGroup>
            </h:panelGrid>
</p:tab>
</p:tabView>

我的问题是如何仅一键提交部分字段?


更新 :

process最后在 commandButton中添加属性

<p:commandButton value="Get" actionListener="#{leavehistory.submitLeaveHistory}" update="tap1" style="margin-left:40px;" />

4

1 回答 1

1

使用 p:commandButton 上的 'process' 属性来命名您想要处理的那些组件或其父命名容器。此外,您可能还希望将属性“partialSubmit”设置为 true。这将阻止 PF 将这些字段发送到无论如何都不会被处理的服务器。

于 2013-11-07T09:42:14.227 回答