方法 : ASP.NET サーバー コントロールの検証を無効にする

更新 : 2007 年 11 月

状況によっては、検証をバイパスすることが必要な場合もあります。たとえば、すべての検証対象フィールドが正確に入力されていない場合でも、ユーザーがポストできるようにする必要のあるページなどです。検証をバイパスするように ASP.NET サーバー コントロールを設定できます。この設定は、サーバーとクライアントの両方に対して行うことも、クライアントに対してだけ行うこともできます。

bt244wbb.alert_security(ja-jp,VS.90).gifセキュリティに関するメモ :

ASP.NET Web ページは、既定で要求の検証を実行して、ユーザー入力にスクリプトや 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 Web ページにおけるユーザー入力の検証