入力チェック関係メモ

空白チェックをする

  1. asp:RequiredFieldValidatorを置きます
    1. IDをちゃんとします
    2. ErrorMessageにエラー時に出すメッセージを設定します
    3. ControlToValidateにチェックするコントロールのIDを設定します

範囲チェックをする

  1. asp:RangeValidatorを置きます
    1. IDをちゃんとします
    2. ErrorMessageにエラー時に出すメッセージを設定します
    3. Typeで型の指定をします
    4. MinimumValueとMaximumValueに最低値と最大値の指定をします
    5. ControlToValidateにチェックするコントロールのIDを設定します

正規表現(型)チェックをする

  1. asp:RegularExpressionValidatorを置きます
    1. IDをちゃんとします
    2. ErrorMessageにエラー時に出すメッセージを設定します
    3. ValidationExpressionに通るデータの正規表現を指定します
    4. ControlToValidateにチェックするコントロールのIDを設定します

asp:RangeValidatorとasp:RegularExpressionValidatorを併用すると、エラー起きます
asp:RegularExpressionValidatorがエラー時ちゃんとメッセージだしてるにも関わらず、ボタンが押せて、押すとエラー
片方が通ってると押せちゃうのかも



エラーメッセージを吹出しで出すには

  1. 入力用のTextbox等を置きます
  2. 検証用のコントロールを置きます(asp:RequiredFieldValidatorとか)
  3. asp:ValidatorCalloutExtenderを置きます
    1. asp:ValidatorCalloutExtenderのTargetControlIDに、検証用のコントロールのIDを指定します
      • デザインから検証用のコントロール選択して、エクステンダーの追加のほうが楽

※検証用のコントロールのDisplayプロパティをNoneにしないと、エラーメッセージが2重に出るので注意
※空じゃないかチェックして、指定の範囲かチェックして〜とか多重に検証すると、検証とポップアップのコントロールだらけになって\面倒くさい!/



検証のグルーピング

ひとつのページに検証用のコントロールと複数のボタンがある場合、どのボタンを押しても検証が動いてしまう。
そういう時は、ボタンと検証コントロールをグループ化する。

  1. 検証用のコントロールとボタンのValidationGroupプロパティにグループ名を設定する
  2. おしまい

ふたつボタンがあるけど、検証してるのは片方だけみたいな場合は、検証してる方だけグループ化すれば動きます。




検証元のコントロールの表示を変更する場合


ここ参照
まず、jQueryを持ってきましょう。


この例ではbackgroundになってますが、border-colorとかもいじれます。



参考サイト

VB6開発者のためのASP.NET開発入門
第5回 業務アプリの必須処理「入力チェック」
http://www.atmarkit.co.jp/fdotnet/vblab/aspnetforvb05/aspnetforvb05_01.html

タグ:

Control
最終更新:2012年07月04日 16:51
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。