我正在开发一个 Spring MVC3 应用程序,我试图了解如何在表单提交发布后重置表单支持模型中的值。
- 例如,考虑一个显示有关客户及其服务的信息的应用程序(称为“评论”页面)。
- Review 页面中有 2 个编辑链接,一个用于修改客户的个人资料信息(“编辑个人资料”),另一个用于修改他们选择的服务(“编辑服务”)。
- “编辑个人资料”有一个提交和取消按钮
在这种情况下,我可能需要帮助来更新最后一次成功提交的模型。
- 客户点击“编辑个人资料”并更改他们的个人资料(例如更改姓名、电话)并点击“提交”。
- 没有服务器端验证错误,模型使用最新信息更新,“审查”页面很好。
- 客户再次单击“编辑配置文件”并尝试更改配置文件的另一部分(例如电子邮件)并单击“提交”。
- 这一次,出现服务器验证错误(“电子邮件已被其他用户占用”),客户被带回“编辑个人资料”页面。但是,由于提交了表单,“编辑个人资料”页面上会出现无效的电子邮件(这是预期的)。
- 现在,客户点击“编辑资料”页面中的“取消”按钮。
- 用户被引导回带有无效电子邮件的“审核”页面(因为表单支持模型已通过在步骤 3 中完成的提交进行了更新)。
我的问题是,当用户在“编辑配置文件”页面上单击“取消”到最近成功提交的表单时,如何更新模型。我无法将其从数据库中拉回,因为客户可能在遇到验证错误之前已成功提交。
谢谢,