4

の文字列の長さを検証しようとしていTextBoxます。次のように定義されたページ上のコントロール:

<asp:TextBox runat="server" ID="TB" />
<asp:RangeValidator runat="server" ID="RV" 
MinimumValue="3" MaximumValue="20" 
ControlToValidate="TB" Type="String" />

しかし、ページが実行されると、実行時エラーが発生します

MaximumValue20はMinimumValue3より小さくすることはできません

4

4 に答える 4

13

あなたはタイプについて言及します、それは代わりincorrectにあるべきですType="Integer"Type="String"

于 2011-06-21T12:47:00.127 に答える
4

TextBoxのMaxLengthプロパティを使用するだけです。これは、テキストボックスで許可される最大文字数を取得/設定するために使用されます。

最小の長さについては、CustomValidatorを使用する必要があります。その呼び出しでは、文字列の長さをチェックするjs関数を呼び出します。

これを試して:

<asp:TextBox runat="server" ID="TB" />    
<asp:CustomValidator runat="server" ID="CustomValidator1" ControlToValidate="TB"
    Text="The text length should be between 3 and 20" 
    ClientValidationFunction="clientValidate" Display="Dynamic">
</asp:CustomValidator>


<script type="text/javascript">
function clientValidate(sender, args) {
    if (args.Value.length < 3 ||args.Value.length > 20) {
        args.IsValid = false;
    }
}

于 2011-06-21T12:55:26.110 に答える
3

TextBoxを使用しての長さを検証することはできませんRangeValidator!! RangeValidatorこの値の長さではなく、フィールドの値を検証するために使用されます。

これを行うには、他の方法を使用できますCustomValidator

于 2011-06-21T12:51:11.717 に答える
0

私のために正しく機能した構文

 <asp:RegularExpressionValidator ID="RegularExpressionValidator34" runat="server" ControlToValidate="fname" 
            Display="Dynamic" ErrorMessage="email is required" ForeColor="Red" SetFocusOnError="True" 
            ValidationExpression="(\s|.){5,10}"> 
                  Length must between (5-10) characters</asp:RegularExpressionValidator>
于 2022-01-31T21:54:16.610 に答える