我有以下文本框及其验证器,但是当我输入正确的文本时会触发RegularExpressionValidator错误消息,无法弄清楚我做错了什么
<asp:TextBox ID="txtName" runat="server" onkeypress="return keyRestrict(event,'abcdefghijklmnopqrstuvwxyz-0123456789')"
AutoCompleteType="Disabled" Width="199px"></asp:TextBox><span style="color: Red">*</span>
<asp:RequiredFieldValidator Display="Dynamic" ID="RequiredFieldValidator3" runat="server"
ControlToValidate="txtName"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="revName" runat="server" ControlToValidate="txtName"
CssClass="text-error" Display="Dynamic" ValidationExpression="^[\p{L}\s]+$" ErrorMessage="Invalid Name"></asp:RegularExpressionValidator>
我还使用了ValidationExpression ^[A-Za-z]+$
来测试ValidationExpression中是否存在某些错误,然后在正在验证的文本框中的Name
中键入,但仍然触发了错误消息的RegularExpressionValidator。
此致
答案 0 :(得分:0)
^[\p{L}\s]+$
只匹配1个或多个字母(不是数字)或空格..
如果您想用数字验证它,您必须使用
^[\p{L}\p{N}\s]+$
这将匹配unicode字母,数字和空格1到很多次