Visual Basic.Net と ASP を使用して、検証を行うフォームを作成しようとしています。
次のように、RegularExpressionValidator をテスト用のフォーム フィールドにドロップし、Page_Load 関数の Visual Basic コードを介して属性を割り当てました。
LoginID.ValidationExpression = "[\\s\\S]{0,3}"
LoginID.ErrorMessage = "Maximum 3 characters are allowed."
テスト目的で最大 3 文字を設定しました。そのテキスト フィールドへの入力は長さに関係なく無効になり、エラー メッセージは在庫値から更新されません。
なぜこれが起こっているのですか、どうすれば修正できますか?
編集:
私が持っている正規表現はうまく機能します。私はすでにそれをテストしました。他に何か問題があるはずです。
もっと見る必要がある人のために、コードの大部分を次に示します。これ以外に、関連するものは他にありません。
<%-- ASP code %>
<th width="200"><span class="required">*</span>Create Login ID :</th>
<td width="230" align="left"><asp:TextBox ID="txtLoginID" runat="server" CssClass="inputbox" MaxLength="50"></asp:TextBox><br />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" ValidationGroup="First" CssClass="ValueValidator" ControlToValidate="txtLoginID" Display="Dynamic" runat="server" ErrorMessage="<br>Please Enter LoginID"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="ValRegExLoginID" runat="server" ControlToValidate="txtLoginID" CssClass="ValueValidator" ErrorMessage="*"></asp:RegularExpressionValidator>
</td>
//Visual Basic Code
Protected Sub Page_Load(ByVal source As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
ValRegExLoginID.ValidationExpression = "[\\s\\S]{0, 3}"
ValRegExLoginID.ErrorMessage = "Maximum 3 characters are allowed."
End If
End Sub