jsf2-PrimeFaces在取消按钮上禁用验证



在一个表单中,我有一些inputText,其中有两个commandButton,一个到accept,一个给cancel

如何仅禁用"取消"按钮的验证?

<h:form id="detailsForm">
  <p:inputText id="editUsername" value="#{userController.editUser.usrUsername}" />
  <p:inputText id="editFirstName" value="#{userController.editUser.usrFirstName}" />
  <p:inputText id="editLastName" value="#{userController.editUser.usrLastName}" />
  <p:commandButton value="Accept" update=":detailsForm" actionListener="#{userController.onDetailsEditAccept}" />
  <p:commandButton value="Cancel" update=":detailsForm" actionListener="#{userController.onDetailsEditCancel}" />
</h:form>

我已经尝试在字段中插入required="false",但没有成功。我还尝试在字段中插入<f:validateBean disabled="true" />,但没有成功。

在取消commandButton中使用属性immediate="true"。这将跳过应用请求值过程验证更新模型值

<p:commandButton value="Cancel" update=":detailsForm" actionListener="#{userController.onDetailsEditCancel}" immediate="true"/>

使用"取消"按钮中的属性process="@this"。这将阻止提交整个表单。

或者您可以使用p:button(但是它没有actionListener属性)。请参阅其他问答

如果您不想提交表单,您应该只使用<p:button>。CCD_ 11提交表格。

<p:button value="delete All"
action="#{reloadBean.purge}" update="@form"/>

最新更新