【发布时间】:2012-07-24 06:30:56
【问题描述】:
我在标准 ASP.NET 页面上有一个带有一些输入控件的表单。我使用验证控件来验证服务器上的输入。
我注意到有几篇文章描述了在验证失败时会阻止回发这一事实的问题。我的问题恰恰相反,即永远不会阻止回发,但是每次回发时都会发生验证,这意味着每次用户更改输入字段中的值时,表单都会被涂上红色文本(即使他很清楚他没有填写表格!)。
本论坛上的其他文章认为这种行为是有意的。显然,用户不想担心在按下“提交”之前告诉他他做错了什么的信息。 那么如何将控件配置为仅在按下提交按钮时显示验证摘要,而不是在任何回发时显示验证摘要?
注意:我只在按下提交按钮时调用 Page.IsValid - 没有其他地方。谢谢。
【问题讨论】:
-
您能否显示您尝试验证的 asp 页面,同时确保按钮在原因验证时设置为 true
-
误解 - 阅读 ASP.NET Page-lifecycle Validating User Input in ASP.NET Web Pages - 验证发生在页面初始化之后(即在处理视图状态和回发数据之后)但之前调用任何更改或单击事件处理程序。
标签: asp.net validation postback