我有一个页面模式对话框,如果用户单击编辑按钮,则会呈现该对话框.该对话框要求输入用户名和密码,并有一个提交按钮.如果用户名和密码未验证,则会显示错误.
问题是,如果用户名和密码不进行身份验证,则每次身份验证失败时,模式背景会越来越暗.
会导致什么?
required="true" label="lanId" requiredMessage="Lan ID is required" />
required="true" label="password" Feedback="false" requiredMessage="Password is required" />
最佳答案
您每次都在更新对话框而不先关闭它.我不确定它是否是错误或功能,但由于可见属性,重叠会在每次对话更新时重新初始化.你可能想要将它报告给PrimeFaces的人以及更紧凑的测试用例.
最简单的解决方案就是关闭ajax成功的对话框.它将被重新显示得比最终用户眨眼更快.
您可能只需要微调可见和渲染属性,以确保在验证失败时重新打开对话框(例如,当用户仍未登录时).
另一种方法是更新对话框的表单而不是对话框本身.
然后,可以通过RequestContext #cute()完成关闭成功登录对话框.
RequestContext.getCurrentInstance().execute("dialog.hide()");