我希望在表单处理之后运行自定义验证函数,但在更新(呈现)之前。 如果我使用oncomplete显然在验证之前执行更新。 如果我使用onclick然后在表单处理之前进行验证,这再次不适合我,因为我没有要验证的值。 有没有办法在进程之后但在更新之前执行该功能?
<p:commandButton process="@form" update="@form" actionListener="#{bean.method}" oncomplete="validate()"/>
答案 0 :(得分:0)
在这种情况下,请始终查看文档。具体来说,关于<p:commandButton>
的与ajax相关的JavaScript函数,文档说明:
onstart
:在ajax请求开始之前执行的客户端回调; onsuccess
:当ajax请求成功时执行的客户端回调; oncomplete
:在ajax请求完成时执行的客户端回调。请注意, onerror
回调:当ajax请求失败时执行客户端回调。
正如您从这些摘录中可以理解的那样,回调的连续性正如答案中所呈现的那样。选择适合您需求的那个。
此外,了解JSF lifecycle是明智之举。