我正在研究 JSF。我有一个包含多种表单的 xhtml 页面。当我提交一个表单时,如果我在其他表单上进行了一些更改,我就会丢失它,因为在提交时页面正在刷新。我不能使用单一表格。有什么办法吗。
任何解决方案都将受到高度赞赏。
谢谢 !
我正在研究 JSF。我有一个包含多种表单的 xhtml 页面。当我提交一个表单时,如果我在其他表单上进行了一些更改,我就会丢失它,因为在提交时页面正在刷新。我不能使用单一表格。有什么办法吗。
任何解决方案都将受到高度赞赏。
谢谢 !
如果您已经在使用 JSF 2.x(您使用 XHTML (Facelets) 的声明或多或少地证实了这一点),只需通过 ajax 提交表单。
只需将以下标记添加到表单的命令链接/按钮即可:
<f:ajax execute="@form" render="@form" />
这样,当前<h:form>
将由 ajax 提交,并且<h:form>
仅呈现当前(更新/刷新)。render
如有必要,您可以通过添加其他客户端 ID 在属性中指定其他要更新的组件。
如果你还在使用旧的 JSF 1.x,你可能想看看 RichFaces 的 Ajax4jsf 子库,它支持的基本相同。