JavaScript验证可选的手机号码

JavaScript validation for OPTIONAL mobile no

本文关键字:手机号码 验证 JavaScript      更新时间:2023-09-26

我有一个注册表单,其中有一个MobileNo字段,用户应该提供他们的手机号码,但这个字段是可选的,因为用户可能选择不提供他/她的手机号码。
在数据库表中,我为这个字段保留了ALLOW NULL选项。

现在我想在这个字段上使用JavaScript验证,这样用户只能输入一个整数值,如果他/她选择给出他/她的手机号码,那么只有10位数字。
问题是,当我为此编写代码时,然后当我保持移动字段空白时,它会显示JavaScript验证正在进行的错误。

我的JavaScript代码如下:
function f1() {
if (document.form2.mobile.length!=10 || isNan(document.form2.mobile) {
    alert("Mobile No must be NUMERIC and 10 digit long");
    return false;   
}

是否有任何解决方案,因为只有当用户选择输入他/她的移动电话时,这些验证才会起作用,否则如果它是空白的,注册将完成

用另一个条件换行,如下所示:

function f1() {
    if(document.form2.mobile.value !== "") {
        if (document.form2.mobile.length!=10 || isNan(document.form2.mobile)
        {
            alert("Mobile No must be NUMERIC and 10 digit long");
            return false;
        }
    }
}

正则表达式选项:

if (!/^$|^'d{10}$/.test(document.form2.mobile.value)) {
    alert("Mobile No must be NUMERIC and 10 digit long");
    ...
}