PrimeFaces禁用取消按钮上的验证[重复]
Posted
技术标签:
【中文标题】PrimeFaces禁用取消按钮上的验证[重复]【英文标题】:PrimeFaces disable validation on cancel button [duplicate] 【发布时间】:2013-02-04 04:31:39 【问题描述】:在一个表单中,我有一些带有两个 commandButton 的 inputText,一个到 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" />
,但没有成功。
【问题讨论】:
【参考方案1】:在您的取消commandButton
中使用属性immediate="true"
。通过跳过应用请求值、流程验证和更新模型值阶段,这将跳过表单的整个处理过程。 p>
<p:commandButton value="Cancel" update=":detailsForm" actionListener="#userController.onDetailsEditCancel" immediate="true"/>
【讨论】:
【参考方案2】:在“取消”按钮中使用属性process="@this"
。这将阻止提交整个表单。
或者您可以使用p:button
代替(但是它没有actionListener
属性)。见this other Q/A
【讨论】:
【参考方案3】:如果您不想提交表单。您应该只使用<p:button>
。 <p:commandButton>
提交表单。
<p:button value="delete All"
action="#reloadBean.purge" update="@form"/>
【讨论】:
你为什么要重复已经给出的答案并包含不相关的属性? 这对我有用,所以我想分享我的例子。对不起,如果我不能正确使用论坛 投票选出对你有用的答案。以上是关于PrimeFaces禁用取消按钮上的验证[重复]的主要内容,如果未能解决你的问题,请参考以下文章
PrimeFaces上传组件中是否有取消按钮的bean事件?
如果在primefaces中禁用复选框值,则该值将为false