3

我有一个通用的“表单页面”用户控件,我们使用它允许编辑者在其中插入他们想要的任何类型的 html 表单,并处理所有表单帖子。

我的问题是,有没有办法将普通的非 asp 表单条目存储在视图状态中,或者以其他方式将条目保存在表单帖子中,以防某些服务器端验证失败,因此可以在页面刷新时恢复它们?

我们目前已经进行了捕获大部分输入错误的前期 javascript 验证。在进行进一步处理之前,我们将所有表单发布数据存储在数据库中,并且某些条目包含垃圾邮件(我们希望忽略的垃圾邮件)或仅部分信息(我假设这些是用户没有 javascript 的情况启用)。我试图抓住这些最后的边缘案例,所以我们不处理它们。

4

3 回答 3

1

如果您不提前知道表单字段是什么,那么我建议您查看部分回发。

或者通过ajax发布表格。

于 2012-10-05T18:35:25.247 回答
1

如果我理解正确,1>用户填写表单 2>点击提交 3>在服务器端检测到错误 4>回发的 Html 应该包含我已经在顶部填写错误消息的表单。

您是否考虑过使用 JQuery Ajax?

jquery ajax 将发布到 web 方法。Web 方法返回 JSON 响应。如果响应成功,则将用户重定向到下一页,否则在页面顶部显示错误。

这样您就不需要维护用户输入的状态(因为它永远不会丢失)。

于 2012-10-08T18:56:53.747 回答
0

您可以将文本 HTML 存储在

     <asp:HiddenField ID="hid1" runat="server" />

这将在视图状态中传递

于 2012-10-05T18:49:11.050 回答