0

Html (完全なコード)

<asp:TextBox ID="txtSasiNo" runat="server" Width="250px" MaxLength="17"></asp:TextBox>
<asp:RegularExpressionValidator CssClass="zorunlu" ValidationGroup="kaskoTeklifSayfasi" Display="Dynamic" ID="rangevalidator1" runat="server" SetFocusOnError="true" ControlToValidate="txtSasiNo" ErrorMessage="Enter number characters only (8 or 17)" ValidationExpression="^\d{8}$|^\d{17}$""></asp:RegularExpressionValidator>
<asp:RequiredFieldValidator ID="rfvSasiNo" SetFocusOnError="true" ValidationGroup="kaskoTeklifSayfasi" runat="server" Display="Dynamic" ControlToValidate="txtSasiNo" CssClass="zorunlu">Please enter Number.</asp:RequiredFieldValidator>

質問:

RangeValidator を使用しようとしています。

txtnumber が null または空で、txtnumber が 8 文字または 17 文字でない場合。最初のオプションは 8 文字、2 番目のオプションは 17 文字の 2 つのオプションのみです。

txtnumberテキスト文字のみが以下のようになります

12345678    // This is 8 characters
12345678901234567    // This is 17 characters

これを達成するためにRangeValidatorに何を追加しますか?

ありがとう。

4

3 に答える 3

1

Ondrejで説明されているように、を使用できますRegularExpressionValidator。aspx でより具体的に説明します。以下のコードを参照してください:-

更新されたコード:

どうぞ:-

<asp:TextBox ID="txtnumber" runat="server" Width="250px"></asp:TextBox>
<asp:RegularExpressionValidator Display="Dynamic" ID="regtxt" runat="server" SetFocusOnError="true" ControlToValidate="txtnumber" ErrorMessage="Enter number characters only (8 or 17)" 
    ValidationExpression="^\d{8}$|^\d{17}$"></asp:RegularExpressionValidator>

それが役に立てば幸い

于 2015-03-19T12:16:19.953 に答える
1

範囲バリデーターを使用しないでください - 代わりに正規表現バリデーターを使用してください:

<asp:RegularExpressionValidator ValidationExpression="^([0-9]{8})|([0-9]{17})$" ... />
于 2015-03-19T12:10:35.677 に答える
0

通常、バリデータは空のフィールドを無視します。注目すべき例外: RequiredFieldValidator. これを追加して空のフィールドを保護し、RangeValidator を保持して特定の範囲の値を強制します。

于 2015-03-19T12:27:33.853 に答える