我正在尝试准备一个电话号码文本框,但我找不到让它正常工作的方法。我不想要javascript或jquery ......
我希望它具有掩码结构:(0312)255 29 47
用户不能将其留空,所以我放置了必需的字段验证器,我想用正则表达式验证这个格式是否正确。
这是我的代码如下。谢谢你的帮助
<asp:TextBox ID="txtTelefon" runat="server" ValidationGroup="contact" TextMode="Phone"></asp:TextBox>
<ajaxToolkit:MaskedEditExtender ID="MaskedEditExtender2" TargetControlID="txtTelefon" MaskType="Number" Mask="(999) 999 99 99" ClearMaskOnLostFocus="false" runat="server"></ajaxToolkit:MaskedEditExtender>
<asp:RegularExpressionValidator ID="RegularExpressionPhone"
runat="server"
ControlToValidate="txtTelefon"
Display="Dynamic"
ErrorMessage="Invalid phone number"
SetFocusOnError="True"
ValidationExpression="((\(\d{3}\) ?)|(\d{3}-))?\d{2}-\d{2}">
</asp:RegularExpressionValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErorMessage="Please enter a valid phone number!" ForeColor="Red" ControlToValidate="txtTelefon" Font-Size="Small"></asp:RequiredFieldValidator>
答案 0 :(得分:0)
根据您的示例(0312) 255 29 47
,匹配它的有效正则表达式为:
\(\d{4}\) \d{3} \d{2} \d{2}
有关正则表达式的详细说明,请参阅https://www.regex101.com/r/bA3aY1/1。