Javascript Primeface';s ajax事件模糊阻止表单提交

Javascript Primeface';s ajax事件模糊阻止表单提交,javascript,jsf,primefaces,Javascript,Jsf,Primefaces,我有一个JSF页面,其中包含一些Primefaces组件,包括一个输入文本和一个提交按钮。在中有 当我将插入符号(文本光标)留在输入文本外时,提交工作正常,否则,如果我将插入符号留在输入文本内,提交不会发生,但再次单击该按钮,表单提交工作正常 使用Chrome调试ajax调用我可以看到发送的内容: 我认为这只是模糊事件,提交没有发生。有什么帮助吗?谢谢我试图用PrimeFaces 10和Chrome 89重现这一点,但未能成功。因此,升级PrimeFaces版本(如果您尚未使用10)可能会有所

我有一个JSF页面,其中包含一些Primefaces组件,包括一个输入文本和一个提交按钮。在
中有

当我将插入符号(文本光标)留在输入文本外时,提交工作正常,否则,如果我将插入符号留在输入文本内,提交不会发生,但再次单击该按钮,表单提交工作正常

使用Chrome调试ajax调用我可以看到发送的内容:


我认为这只是模糊事件,提交没有发生。有什么帮助吗?谢谢

我试图用PrimeFaces 10和Chrome 89重现这一点,但未能成功。因此,升级PrimeFaces版本(如果您尚未使用10)可能会有所帮助。如果这对你没有帮助的话,那么在会议上报告这个问题可能是值得的。如果您这样做,请创建一个复制机并包括版本号

您可以尝试通过以下方式解决此问题:

  • 使用
    async=“true”
    ,使Ajax请求不排队。您可以在
    p:ajax
    p:commandButton
    上尝试此功能
  • p:ajax
    上设置轻微延迟,例如
    delay=“50”
    (值以毫秒为单位)
值得一提的是,这对我来说很有用:


#{testView.string}
更改输入,将焦点保留在输入中,然后单击submit按钮将生成两个请求。第一个更新输入,第二个更新标题