2012-03-30 7 views
4

私はバリデータを複数回使用しましたが、いくつかのプログラミングの後、バリデータが動作していません。私は同じコントロールに対して2つのバリデータを定義することについてはわかりませんが、コントロールの1つのバリデータでは機能しませんRangeValidatorが機能しないのはなぜですか?

例1:1つの必須フィールドバリデータとユーザ名のための1つの「最大値」バリ:

<asp:RequiredFieldValidator id="UsernameRequiredValidator" runat="server" 
            ControlToValidate="UserNameTextbox" ForeColor="red" 
            Display="Dynamic" ErrorMessage="Required" /> 

<asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="UsernameTextbox" MinimumValue="1" MaximumValue="20" ForeColor="red" 
    Display="Dynamic" ErrorMessage="Name must contain maximum 20 characters"></asp:RangeValidator> 

例2:roadaddressための1つの「最大値」バリ(私のコードの2例は、either.Hereあります文字列):

<asp:RangeValidator ID="RangeValidator9" runat="server" MaximumValue="50" ForeColor="red" 
      ErrorMessage="Road Address must contain maxmum 50 characters" ControlToValidate="RoadAddressTextbox"></asp:RangeValidator> 

私はこの問題が表示プロパティまたはusesvalidationプロパティにあると思っています。

+0

いいえAJAX no UpdatePanel .. – Dchris

答えて

4

これはRangeValidatorのものではありません。 RangeValidatorは入力を確認して特定の範囲内にあることを確認します。つまり、数字が1〜5の範囲内であること、日付が特定の範囲内にあることなどを確認することです。

必要なものはRegularExpressionValidator

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
    ControlToValidate="UserNameTextbox" 
    ErrorMessage="Username must be between 1 and 50 characters" 
    ValidationExpression="^[a-zA-Z\s]{1,50}"> 
</asp:RegularExpressionValidator> 

EDIT:更新表現^[a-zA-Z\s]{1,50}

関連する問題