首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >当表单没有发布到它所在的页面时,传递回错误状态的最好方法是什么?

当表单没有发布到它所在的页面时,传递回错误状态的最好方法是什么?
EN

Stack Overflow用户
提问于 2010-06-29 08:23:57
回答 1查看 29关注 0票数 3

如果我有一个表单在http://foo.com/get页面上,但是发布到http://foo.com/post上,那么处理显示验证错误的最好方法是什么?我想将用户重定向回第一个页面。我如何隐藏表单状态(包括错误消息),以便在重定向到http://foo.com/get之后的下一个请求中,我可以获取该表单并呈现它。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-06-29 08:50:56

您可以使用会话,但它需要一些机器。

如果成功,您将存储一条要显示的消息。出错时,存储一条消息、输入的表单数据的完整列表以及每个出错字段的标志。接收页面必须从会话中读取这些内容,做正确的事情,并将其清除。

通过一些谨慎的设计决策,您可以避免每次拥有显示表单的页面时都必须重写这些内容。下面是我如何实现这一点的更多信息(我不能分享代码本身,但不管怎样,它都不是那么好):

如果我的表单验证类检测到错误的提交,它会自动将数据存储在会话中,并且我的表单呈现类在每次实例化它时都会检查它。它也会覆盖数据库中的数据(假设你正在编辑一个已有的记录)。我的会话接口自动清除过时的消息和表单数据。(在这里,您必须小心使用AJAX或其他可能在访问会话信息时过早清除它的内容。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3137068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档