如何:禁用 ASP.NET 服务器控件验证

更新:2007 年 11 月

在特定条件下,您可能需要避开验证。例如,您可能具有一个页面,即使用户没有正确填写所有验证字段,也应该可以发送页。您可以设置 ASP.NET 服务器控件来避开客户端和服务器的验证,而不只是客户端验证。

bt244wbb.alert_security(zh-cn,VS.90).gif安全说明:

默认情况下,ASP.NET 网页执行请求验证以确保用户输入内容不包含脚本或 HTML 元素。可以显式禁用该功能。有关更多信息,请参见脚本侵入

您还可以禁用验证控件,以使它根本不在页面上呈现并且不进行使用该控件的验证。

如果要执行服务器上的验证,不执行客户机上的验证,您可以将单独验证控件设置为不生成客户端脚本。如果客户端上的动态更新导致页的布局出现问题,或者如果要在验证之前执行一些服务器代码,这一措施将尤为有用。

在特定控件中禁用验证

  • 将该控件的 CausesValidation 属性设置为 false。

    下面的示例显示如何创建“取消”按钮,以便避开验证检查:

    <asp:Button id="Button1" runat="server"
      Text="Cancel" CausesValidation="False">
    </asp:Button>
    
    <asp:Button id="Button1" runat="server"
      Text="Cancel" CausesValidation="False">
    </asp:Button>
    

禁用验证控件

  • 将验证控件的 Enabled 属性设置为 false。

禁用客户端验证

  • 将验证控件的 EnableClientScript 属性设置为 false。

请参见

概念

ASP.NET 服务器控件的客户端验证

参考

在 ASP.NET 网页中验证用户输入