我有一个对话框,使用以下按钮关闭:
<p:commandButton
onclick="propertyEditDialog.hide(),propertyEditDialog.loaded=false"
value="#{i18n['button.cancel']}" ajax="true"/>
没有动作,只有客户端javascript只是隐藏对话框。但是,我在日志中看到,表单在取消时已经过验证。我已将ajax="true"
设置为阻止表单验证,但无论如何都没有帮助。
在不验证表单的情况下,在PrimeFaces中关闭对话框的正确方法是什么?
答案 0 :(得分:8)
ajax="true"
是p:commandButton
的默认行为!
正确的方法是排除处理过的投入。使用commandButton中的attribut process="@this"
,只应处理按钮。
但是如果您不想激活某些操作并且不想提交表单,可能最好通过向commandButton添加属性type="button"
来使用按钮(而不是提交按钮)。
答案 1 :(得分:7)
您可以使用属性immediate="true"
来避免验证。