我已经在我的aspx页面中添加了手机号码验证
这是我的代码:
<tr>
<td>
<asp:Label ID="label7" runat="server" Text="Mobile Number"></asp:Label>
</td>
<td>
</td>
<td>
<asp:TextBox ID="TextBox1" runat="server" CssClass="form-control" MaxLength="10"
OnClientClick="return Validatemobilenum();"></asp:TextBox>
</td>
</tr>
脚本:
function Validatemobilenum() {
var phone = document.getElementById("<%=Textmobilenum.ClientID%>");
var RE = /^[\d\.\-]+$/;
if (phone.value != "") {
if (!RE.test(phone.value)) {
alert("You have entered an invalid phone number");
return false;
}
}
else {
alert("please Enter mobile number");
return false;
}
return true;
}
当我运行上面的代码时,
即使我为手机号码插入字符也能正常工作。这就是上面的脚本无效。
我可以知道,我的错误是什么?
任何帮助都将受到高度赞赏。
谢谢,
答案 0 :(得分:0)
解决方案1
您需要在Onblur
属性上编写代码,如下所示: -
<asp:TextBox ID="Textmobilenum" runat="server" CssClass="form-control" MaxLength="10" onblur="return Validatemobilenum()"></asp:TextBox>
解决方案2
<强>更新强>
如果您想在OnClientClick
事件中检查该功能,则需要为其添加Button
,如下所示
<asp:Button ID="btnTest" runat="server" OnClientClick="return Validatemobilenum()" Width="100" Text="Validate" />
你的js功能
function Validatemobilenum() {
var phone = document.getElementById("<%=Textmobilenum.ClientID%>");
var RE = /^[\d\.\-]+$/;
if (phone.value != "") {
if (!RE.test(phone.value)) {
alert("You have entered an invalid phone number");
return false;
}
alert('Correct mobile number entered');
}
else {
alert("please Enter mobile number");
return false;
}
return true;
}
注意: - 不确定您的正则表达式