サーバー側でもクライアント側でも、あまり考える必要がなく、プログラマーはメインプログラムの設計に集中できます。
ASP.NET は公開されている6つの検証コントロールを持ち、それらは以下の通りです。
コントロール名機能の説明 RequiredFieldValidatorは入力値があるかどうかを確認するために使用されます CompareValidatorは2つの入力を比較します RangeValidator 入力:指定範囲内かどうか RegularExpressionValidator:正規表現検証コントロール CustomValidator:カスタム検証コントロール ValidationSummaryは検証結果をまとめます
これらのコントロールがどのように使われているか見てみましょう。
1. RequiredFieldValidatorの使用
RequiredFieldValidatorコントロールで使用される標準コードは以下の通りです:
<ASP:RequiredFieldValidator id="Validator_Name" Runat="Server" ControlToValidate="チェックするコントロール名" ErrorMessage="Error Message" Display="Static|ダイマティック|全く」
> プレースホルダー </ASP: RequiredFieldValidator >
上記の標準コードでは: ControlToValidate:コントロールIDをチェックすることを示します。 ErrorMessage:小切手が違法な場合に表示されるエラーメッセージを示します。 表示:エラーメッセージの表示方法; 静的はコントロールのエラーメッセージがページ内で正の位置を占めていることを示します。 ダイマティックとは、コントロールエラーメッセージが出た時のみページコントロールが占有されることを意味します。 Nはエラーが表示されないことを意味しますが、ValidatorSummaryには表示可能です。 プレースホルダー:ディスプレイが静的の場合、エラーメッセージは「プレースホルダー」と同じ広さのページスペースを占めます。
では、例を見てみましょう。 <ASP:TextBox id="txtName" RunAt="Server"/> <ASP:RequiredFieldValidator id="Validator1" Runat="Server" ControlToValidate="txtName" ErrorMessage=「名前を入力する必要があります」 Display="Static"> *名前は入力が必要です </ASP:RequiredFieldValidator>
上記の例では、txtNameコントロールが入力されているか確認し、入力されていなければ「Name must be entryed」というエラーメッセージが表示されます。 簡単じゃない? 注:上記のコードおよび以下の他のコントロールのコードはフォームに入力するのが最適であり、ASPとは異なりフォームは次のように書くのが最適です。 <Form RunAt="Server"> その他のコード </フォーム> このようにして、フォームはサーバー側で実行され、コミットは有効となります。
2. CompareValidatorコントロールの比較
コントロールを比較する 2つのコントロールの入力がプログラム設定に合致しているかどうかを比較し、単に「等しい」と理解するのではなく、等号が最もよく使われますが、実際、ここでの比較は幅広い範囲を含みます。標準コードを見ることで理解できます。
比較制御の標準コードは以下の通りです: <ASP:CompareValidator id="Validator_ID" RunAt="Server" ControlToValidate="Control ID to verify" errorMessage="Error Message" ControlToCompare="Control ID to compare" type="String|整数|ダブル|デートタイム|通貨」 演算子="等しい|NotEqual|グレーター・タン|グレータータン・エコール|レスタン|レスタンエコラム|DataTypeCheck」 Display="Static|ダイマティック|全く」
> プレースホルダー </ASP:CompareValidator>
上記の標準コードでは: タイプは比較対象のコントロールのデータタイプを示します。 演算子とは比較操作(つまり比較が単に「等しい」ではない理由)を意味し、ここでは比較方法が7通りあります。 その他のプロパティはRequiredFieldValidatorと同じです。 ここでControlToValidateとControlToCompareの違いに注目してください。もしPerformがGreateThanなら、ControlToCompareはControlToValidateより大きくなければ合法ではありません。さて、両者の意味を理解しているはずですよね? 例として、RequiredFieldValidatorコントロールを参照し、標準コードに基づいて独自のものを設計してください。
3. レンジバリデーター制御
入力がMaximumValueとMinimunVlaueによって決まる一定の範囲内にあるかを確認し、標準コードは以下の通りです。
<ASP:RangeValidator id="Vaidator_ID" Runat="Server" controlToValidate="Control ID to validate" type="Integer" MinimumValue="Minimum" MaximumValue=「Maximum」 errorMessage="Error Message" Display="Static|ダイマティック|全く」
> プレースホルダー </ASP:RangeValidator>
上記のコードでは: MinimumValueとMaximumValueを使って制御入力の値範囲を定義し、typeを使って制御入力値の値の種類を定義します。
4. RegularExpresionValidator(正規表現)制御
正規表現の検証制御は非常に強力で、検証メソッドは自分で簡単に構築できます。まずは標準コードを見てみましょう。
<ASP:RegularExpressionValidator id="Validator_ID" RunAt="Server" ControlToValidate="To verify control name" ValidationExpression="正規表現" errorMessage="Error Message" display="Static"
> プレースホルダー </ASP:RegularExpressionValidator>
上記の標準コードでは、ValidationExpressionが焦点となります。では、その構成を見てみましょう。 ValidationExpressionでは、異なる文字が異なる意味を表します: "." 任意の文字を表す; 「*」は他の表現と組み合わせやすいことを意味します。 「[A-Z]」は大文字を示します。 「\d」は簡単な数字を意味し、 上記の式には引用符が含まれていないことに注意してください。 例: 正規表現:「.*[A-Z]」は、数字で始まる文字の任意の組み合わせに大文字が続くことを示します。
5. 検証サマリーコントロール
このコントロールはこのページのすべての検証エラー情報を収集し、後で表示するために整理できます。 標準コードは以下の通りです:
<ASP:ValidationSummary id="Validator_ID" RunAT="Server" HeaderText="ヘッダー情報" ShowSummary="True|「偽り」 DiaplayMode="List|BulletList|シングルパラグラフ」
> </ASP: ValidationSummary > 上記の標準コードにおいて、HeadTextはテーブルのheadTextに相当し、DisplayModeはエラー情報の表示を表します。Listは<BR>HTMLにおいて同値です。 BulletListは<LI>HTMLに相当します。 シングルパレグラフとは、エラーメッセージ間の割り算ができないことを意味します。
6. CustomValidator制御
このコントロールは認証方法を定義するためにカスタム関数を使用し、その標準コードは以下の通りです:
<ASP:CustomValidator id="Validator_ID" RunAt="Server" controlToValidate=「Control to validate」 onServerValidateFunction="Validate Function" errorMessage="Error Message" Display="Static|ダイマティック|全く」
> プレースホルダー </ASP:カスタムバリデーター>
上記のコードでは、ユーザーが入力を検証する関数を定義する必要があります。
7. 概要 認証コントロールが導入された ASP.NET、強力な機能として認証を気にする必要はなくなります。 もちろん、上記の紹介は特に詳細ではなく、マイクロソフトのSDKもご自身で読んでいただきたいです。
======================= 添付:検証制御でよく使われる asp.net 正則表現======================
検証制御でよく使われる asp.net 正規表現:
数字のみを入力してください:「^[0-9]*$」
入力できる数字はn桁のみ:「^\d{n}$」
少なくともn桁のみを入力してください:「^\d{n,}$」
入力できる数字はmからnまでの数字のみ:「^\d{m,n}$」
ゼロで始まる数とゼロでない数のみを入力できます:「^(0|[ 1-9][0-9]*)$"
小数点以下2桁の正の実数のみを入力できます:「^[0-9]+(.[ 0-9]{2})$"
1〜3桁の小数点を持つ正の実数のみを入力できます:「^[0-9]+(.[ 0-9]{1,3}) $"
入力できるのはゼロでない正の整数のみ:「^+ [1-9][0-9]*$」
0でない負の整数のみを入力できます:「^-[1-9][0-9]*$」
入力できる文字は長さ3の文字のみ:「^. {3}$」
入力できる文字は26文字の列だけです:「^[A-Za-z]+$」
26文字の文字列のみを入力できます:「^[A-Z]+$」
入力できる小文字は26文字のみ:「^[a-z]+$」
入力できるのは数字と26文字の文字列のみ:「^[A-Za-z0-9]+$」
入力できるのは、数字、26文字、またはアンダースコア「^\w+$」からなる文字列だけです。
ユーザーパスワードの確認:「^[a-zA-Z]\w{5,17}$」は正しく文字で始まり、長さは6〜18で、文字、数字、アンダースコアのみを含めます。
^%&'が含まれているかどうか確認してください; = $」など:「[^%&',; = $x 22]+"
中国語の文字のみを入力可能です:「^[u4e00-u9fa5],{0,}$」
メールアドレスを確認してください:「^\w+[-+.]\w+)*@\w+([-.]\w+)*.\w+([-.]\w+)*$」
インターネットURLを確認してください:「^http://([\w-]+.)+[\w-]+(/[\w-./ %&=]*) $"
認証電話番号:「^((\d{3,4})|\d{3,4}-) \d{7,8}$」は正しく書かれています:「XXXX-XXXXXXX」,「XXXX-XXXXXXX」,「XXX-XXXXXXX」「XXX-XXXXXXX」「XXX-XXXXXXX」,「XXXXXXXXXX」。
ID番号(15桁または18桁)を確認:「^d{15}|d{}18$」
1年のうち12ヶ月を検証する: "^(0 [1-9]|1[0-2])$" 正しい形式は以下の通りです: "01"-"09" と "1""12"
1か月間の31日間の検証:「^((0 [1-9])|( (1|2)[0-9])|「30|31)$」は正しく書式化されています:「01」「09」「1」「31」。
|