我的页面上有几个asp验证控件。我的页面上有一个asp.net按钮,可以保存页面上的所有内容。
在OnClick服务器端事件的按钮,我应该总是包装它在一个(如果Page.IsValid)语句?
无论如何,验证似乎仍然有效?还是只有客户端验证在工作?
默认情况下,验证将在Page_Load
事件后由按钮触发。
调用Page.Validate()
后,Page.IsValid
也有意义。请注意,后者在一些场景中会自动发生。
你的问题可以更深入地回答,但我不想做更多的细节,因为许多人已经讨论过这个问题了。你可以继续阅读其他SO问题
Page.Validate
是自动调用的,但是在某些情况下,您最好在自己的代码中调用该方法。调用Page.Validate()
方法触发服务器端验证。
您将需要检查Page.IsValid
属性,以找出是否有任何验证错误。然后由您来决定是继续处理该页,还是只返回该页。
如果没有检查属性并更改流,则事件处理代码将被执行。
你可以通过在浏览器中禁用JavaScript然后提交表单来发现服务器端验证是否正在发生。这会绕过客户端验证。