在一个表单中,我有一些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"/>